/Algorithms

This is a continuously updating list of some of the most essential algorithms implemented in pseudocode, C++, Python and Java.

Primary LanguageC++

Algorithms

If you would like to contribute to this repo, please contact me.

This is a continuously updating list of some of the most essential algorithms implemented in pseudocode, C++14, Python 3.6 and Java. You can find a comprehensive explanation of some of the algorithms present in this repo here:

Contents

  1. Divide and conquer
  2. Bubble Sort
  3. Insertion Sort
  4. Counting Sort
  5. Selection Sort
  6. Merge Sort
  7. Quick Sort
  8. Heap Sort
  9. Radix Sort
  10. Linear Search
  11. Binary Search
  12. Sieve of Erathostenes
  13. Knuth-Morris-Pratt Algorithm (KMP)
  14. Greedy. Maximum number of non-overlapping intervals on an axis
  15. Fractional Knapsack Problem
  16. Dynamic Programming. 0-1 Knapsack Problem
  17. Longest Common Subsequence
  18. Longest Increasing Subsequence
  19. Convex Hull
  20. Breadth-First Search (BFS)
  21. Depth-First Search (DFS)
  22. Floyd-Warshall / Roy-Floyd
  23. Dijkstra
  24. Bellman-Ford
  25. Kruskal
  26. Topological Sorting

Pseudocode Implementation: 1-7, 9-25 - @iuliagroza / 8 - @notreallystatic
C++ Implementation: 1-7, 9-25 - @iuliagroza / 8 - @notreallystatic
Python Implementation: 1-2, 4-22 - @iuliagroza / 3, 23-26 - @MahmoudFettal
Java Implementation: 3, 5 - @Abbeyme1

© Iulia Groza