/DSA

Collection of implementations of various data structures and algorithms . Can be used as an ACM ICPC Team Notebook .

Primary LanguageC++MIT LicenseMIT

DSA (Data Structures and Algorithms)

Reference purposes .

  1. Knuth-Morris-Pratt Algorithm cpp python
  2. Depth First Search w/o stack cpp python
  3. Depth First Search with stack cpp python
  4. Breadth First Search cpp python Java
  5. Suffix Arrays
  6. Segment Trees [python] (https://github.com/robin-0/DSA/blob/patch-1/Python/SEGTREE.py)
  7. Segment Trees with Lazy Propogation
  8. Segment Trees with Max Prefix/Suffix Sum and Max Subvector sum
  9. Euler Totient Function cpp python
  10. Dijkstra's Algorithm cpp python Java
  11. Fast Modulo Multiplication / Binary Exponention cpp python
  12. Meet in Middle
  13. Binary Search cpp python java
  14. Matrix Exponention for Fibonacci Series
  15. Modular Multipicative Inverse using Fermat's Theorem
  16. Tries cpp python
  17. Bellman-Ford Algorithm [python] (https://github.com/robin-0/DSA/blob/patch-3/Python/BellmanFord.py)
  18. Rabin-Karp Algorithm cpp python
  19. Binary Search Tree python
  20. Sieve of Eratosthenes cpp python
  21. Maximum Bipartite Matching
  22. Floyd-Warshall Algorithm [python] (https://github.com/robin-0/DSA/blob/patch-4/Python/FloydWarshall.py) [Java] (https://github.com/saru95/DSA/blob/master/Java/floyd.java)
  23. Pollard Rho Integer Factorization cpp python
  24. Binary Indexed Trees / BIT cpp python
  25. Square Root Decomposition
  26. Ford-Fulkerson Algorithm for Maximum Flow (BFS)/ Edmonds Karp Algorithm
  27. Miller Rabin Primality Test cpp [python] (https://github.com/saru95/DSA/blob/master/Python/MRPT.py)
  28. Fibonacci Numbers using fast doubling cpp Python
  29. Generating Non-Fibonacci Numbers cpp Python
  30. Segmented Sieve Method of Erastothenes cpp Python
  31. Quick Sort cpp python Java
  32. Heap Sort cpp python
  33. ConvexHull(GrahamScan)cpp
  34. Longest Increasing Subsequence python
  35. Mergesort cpp python java
  36. Closest Pair Of Points cpp
  37. Radix Sort cpp python Java
  38. Knapsack 0-1 python
  39. Nqueens python java
  40. Longest Common Subsequence python
  41. Kruskal Algorithm cpp
  42. Bubble Sort cpp python java
  43. Stacks - Array implementation cpp - Linked List Implementation cpp
  44. Queue cpp
  45. Comb Sort java
  46. Shell Sort java
  47. Prim's Algorithm [python][https://github.com/saru95/DSA/blob/master/Python/prims_mst.py]