| No. | Program Name | Duration | Deployment |
|---|---|---|---|
| 1. | Hacktoberfest (2022) | 1st Oct 2022 - 31st Oct 2022 | Algorithm |
| 2. | Social Winter of Code (2023) | 1st Jan 2023 - 15th Mar 2023 | Algorithm |
| 3. | Social Summer of Code (2023) | 1st June 2023 - 31st July 2023 | Algorithm |
-
The resources are categorized based on programming language. One folder for one programming language
- Each folder has different subfolders. The subfolder represents the category algorithm belongs to
- Each subfolder has different files. Filename represents the name of the algorithm
- Each folder has different subfolders. The subfolder represents the category algorithm belongs to
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Diagonal Print Algorithm in 2D Array | C, C++, Java, Python |
| 2. | Fisher-Yates Algorithm | C, C++, Java, Python |
| 3. | Monotonic Array | C, C++, Java, Python |
| 4. | Spiral Print Matrix | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Binary <-> Gray Code Conversion | C, C++, Java, Python |
| 2. | Brian Kerningham's Algorithm | C, C++, Java, Python |
| 3. | Hamming Distance Theorem | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Caesar Cipher | C, C++, Java, Python |
| 2. | Columnar Transposition Cipher | C, C++, Java, Python |
| 3. | Diffie - Hellman Algorithm | Python |
| 4. | Hill Cipher | C++, Java, Python |
| 5. | Homophonic Substitution | C, C++, Java, Python |
| 6. | Railfence Cipher | C, C++, Java, Python |
| 7. | RSA | C, C++, Java, Python |
| 8. | SHA - 256 | C, C++, Java, Python |
| 9. | Vernam Cipher | C, C++, Java, Python |
| 10. | Vignere Cipher | C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Burrows-Wheeler Transform Algorithm | C, C++, Java, Python |
| 2. | Huffman Coding | C, C++, Java,Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Banker's Algorithm | C, C++, Java,Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Perceptron Learning - Boolean Functions | Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Karatsuba Algorithm | C++, Java, Python |
| 2. | N-Queen's Problem | C, C++, Java, Python |
| 3. | Strassen's Matrix Multiplication | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | 0/1 Knapsack | C, C++, Java, Python |
| 2. | Coin change problem | C, C++, Java, Python |
| 3. | Edit Distance | C++ |
| 4. | Fibonacci Number | C, C++, Java, Python |
| 5. | Hierholzer Algorithm | C, C++, Java, Python |
| 6. | Longest Common Subsequence | C, C++, Java |
| 7. | Matrix Chain Multiplication | C++ |
| 8. | Minimum Jump Algorithm | C, C++, Java, Python |
| 9. | Minimum Sum Partition Problem | C, C++, Java, Python |
| 10. | Partition problem | C++, Java |
| 11. | Shortest Common Supersequence Problem | C, C++, Java, Python |
| 12. | Travelling Salesman Problem | C, C++ |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Grundy's Number | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Scanline Algorithm | C++, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Bellman Ford | C++ |
| 2. | Dialβs Algorithm | C, C++, Java, Python |
| 3. | Dijkstra | C, C++, Java, Python |
| 4. | Dinic's Algorithm | C++, Java, Python |
| 5. | Disjoint Set Union | C, C++, Java, Python |
| 6. | Fleury's Algorithm | C, C++, Java, Python |
| 7. | Floyd Warshall | C, C++, Java, Python |
| 8. | Ford-Fulkerson Algorithm | C++, Python |
| 9. | Hamiltonian Path | Java |
| 10. | Hopcroft-Karp Algorithm | C, C++, Java, Python |
| 11. | Kosaraju's Algorithm | C++ |
| 12. | Multistage Graph (Shortest Path) | C, C++, Java, Python |
| 13. | Prim's Algorithm | C++, Java, Python |
| 14. | Tarjan Algorithm | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Activity Selection | C, C++, Java, Python |
| 2. | Egyptian Fraction | C, C++, Java, Python |
| 3. | Fractional Knapsack | C, C++, Python |
| 4. | Job Sequencing | C, C++, Java, Python |
| 5. | Merge Interval Algorithm | C, C++, Java, Python |
| 6. | Optimal Merge Pattern | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Bloom-Filter Algorithm | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Addition of two Linked Lists | C++ |
| 2. | Circular Linked List | C, C++, Python |
| 3. | Detect loop in a Linked List | C++ |
| 4. | Doubly Linked List | C, C++, Java, Python |
| 5. | Intersection of two Linked Lists | C++ |
| 6. | Length of Linked List | C, C++, Java, Python |
| 7. | LRU Cache Design | C, C++, Java, Python |
| 8. | Merge Two Sorted Linked List | C, C++, Java, Python |
| 9. | Merge K Sorted Linked List | C, C++, Java, Python |
| 10. | Palindrome Linked List | C, C++, Java, Python |
| 11. | Reverse Linked List | C, C++, Java, Python |
| 12. | Reverse Linked List in a Group of K | C, C++, Java, Python |
| 13. | Singly Linked List | C, C++, Java, Python |
| 14. | Sorting Linked List | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Decision Tree | Python |
| 2. | Feed-Forward Neural Network | C++ |
| 3. | K-Means Clusters | C, C++, Python |
| 4. | K-Nearest Neighbours | C, C++, Java, Python |
| 5. | Linear Regression | C, C++, Java, Python |
| 6. | Logistic Regression | C++, Python |
| 7. | Naive Bayes | C++, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Armstrong Numbers | C, C++, Java, Python |
| 2. | Binary Exponentiation | C, C++, Python |
| 3. | Bennett's Formula | C, C++, Java, Python |
| 4. | Bisection Algorithm | C, C++, Java, Python |
| 5. | Chinese Remainder Theorem | C, C++, Java, Python |
| 6. | Chudnovsky Algorithm | C, C++, Java, Python |
| 7. | Closures of Relations | C, C++, Java, Python |
| 8. | Decimal <-> Binary Converter | C, C++, Java, Python |
| 9. | Extended Euclidean Algorithm | C, C++, Java, Python |
| 10. | Euler's Totient Function | C, C++, Java, Python |
| 11. | Factorial of Number | C, C++, Java, Python |
| 12. | Factors | C, C++, Java, Python |
| 13. | Frievald's Algorithm | C, C++, Java, Python |
| 14. | GCD & LCM | C, C++, Java, Python |
| 15. | Manhattan Distance | C, C++, Java, Python |
| 16. | Modular Exponentiation | C, C++, Java, Python |
| 17. | Pascal's Triangle | C, C++, Java, Python |
| 18. | Perfect Number | C, C++, Java, Python |
| 19. | Prefix-Postfix-Infix Interconversion | C++, Python |
| 20. | Prime Number | C, C++, Java, Python |
| 22. | Reverse Integer | C, C++, Java, Python |
| 23. | Roman to Decimal converter | C, C++, Java, Python |
| 24. | Sieve Eratosthenes Algorithm | C, C++, Java,Python |
| 25. | Strong Number | C, C++, Java, Python |
| 26. | Sudoku Solver | C, C++, Java, Python |
| 27. | Zeller's Algorithm | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Ant Colony Optimization | Python |
| 2. | Genetic Algorithm | C++, Python |
| 3. | Grey Wolf Optimization | C, C++, Java, Python |
| 4. | Hill Climbing Algorithm | C, C++, Java, Python |
| 5. | Particle Swarm Optimization | C++, Python |
| 6. | Shuffled Frog Leaping Algorithm | C++, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Aho-Corasick Algorithm | C, C++, Java, Python |
| 2. | Boyer Moore Algorithm | C, C++, Java, Python |
| 3. | KMP Algorithm | C, C++, Java, Python |
| 4. | Rabin Karp | C++, Python |
| 5. | Z - Algorithm | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | String Permutation | C, C++, Java, Python |
| 2. | Tower of Hanoi | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Binary Search on 2D Matrix | C,C++, Java, Python |
| 2. | Binary Search | C, C++, Java, Python |
| 3. | Exponential Search | C, C++, Java, Python |
| 4. | Fibonacci Search | C, C++, Java, Python |
| 5. | Jump Search | C, C++, Java, Python |
| 6. | Linear Search | C, C++, Java, Python |
| 7. | Order Agnostic Binary Search | C, C++, Java, Python |
| 8. | Ternary Search | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | 3 Sum Problem | C, C++, Java, Python |
| 2. | Bead Sort | C, C++, Java, Python |
| 3. | Bingo Sort | C, C++, Java, Python |
| 4. | Bogo Sort | C, C++, Java, Python |
| 5. | Bubble Sort | C, C++, Java, Python |
| 6. | Bucket Sort | C, C++, Java, Python |
| 7. | Comb Sort | C, C++, Java, Python |
| 8. | Counting Sort | C, C++, Java,Python |
| 9. | Cyclic Sort | C, C++, Java, Python |
| 10. | Cocktail Sort | C, C++, Java, Python |
| 11. | Dutch National Flag | C, C++, Java, Python |
| 12. | Gnome Sort | C, C++, Java, Python |
| 13. | Heap Sort | C, C++, Java, Python |
| 14. | Insertion Sort | C, C++, Java, Python |
| 15. | Intro Sort | C, C++, Java, Python |
| 16. | Merge Sort | C, C++, Java, Python |
| 17. | Odd-Even Sort / Brick Sort | C, C++, Java, Python |
| 18. | Pigeon-Hole Sort | C, C++, Java, Python |
| 19. | Quick Sort | C, C++, Java, Python |
| 20. | Radix Sort | C, C++ Java, Python |
| 21. | Selection Sort | C, C++, Java, Python |
| 22. | Shell Sort | C, C++, Java, Python |
| 23. | Tim Sort | C, C++, Java, Python |
| 24. | Topological Sort | C++ |
| 25. | Wave Sort | C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Max Area in Histogram | C, C++, Java, Python |
| 2. | Next Greater Element | C, C++, Java, Python |
| 3. | Rain Water Problem | C, C++, Java, Python |
| 4. | Stack Using Priority Queue | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Beautiful String Algorithm | C, C++, Java, Python |
| 2. | Camel Case Algorithm | C, C++, Java, Python |
| 3. | Manacher's Algorithm | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | Boyer-Moore Majority Voting | C, C++, Python |
| 2. | Kadane's Algorithm | C++, Java, Python |
| 3. | Shortest Unsorted Continuous Sub-Arrays | C, C++, Java, Python |
| No. | Algorithm Name | Available languages |
|---|---|---|
| 1. | AO* Tree | Java, Python |
| 2. | AVL Tree | C, C++, Java, Python |
| 3. | Binary Search Tree | C, C++ |
| 4. | Binary Tree to BST | C, C++, Java, Python |
| 5. | Binary Tree Views(Left, Right, Top, Bottom) | C, C++, Java, Python |
| 6. | Morris Traversal | C, C++, Python |
| 7. | Red-Black Tree | C++, Java, Python |
| 8. | Splay Trees | C, C++, Java, Python |
| 9. | Symmetric Tree Algorithm | C, C++, Java, Python |
| 10. | Tree Traversal | C, C++, Java, Python |
| 11. | Trie | C++, Java |
| 12. | Van Emde Boas Tree | C, C++, Java, Python |
- Fork and clone the Repo by typing the following commands in the terminal
$ git clone https://github.com/Kumar-laxmi/Algorithms.git
$ cd Algorithms
- Now to add your resource to website, add an object with keys same as listed in existing objects in the file.
- Save and commit your code.
- Push to your fork of the repository , navigate to original repository and make a pull request.
- Clone the Repository after forking
$ git clone https://github.com/<your-github-username>/Algorithms.git
$ cd algorithms
-
Make changes to the code(for ex- add an update route)
-
Create a Branch using:
$ git checkout -b <branch-name>
- Stage your changes using:
$ git add .
- Commit your changes using:
$ git commit -m "add any comment"
- Push the changes to the forked repository using:
$ git push origin <branch-name>
- Navigate to the original repository and make a pull request
- In case of merge conflict fetch and merge from the remote repository
Please don't forget to update the Available Resources section

