/DSA

Collection of my implementation 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
  4. Breadth First Search
  5. Suffix Arrays
  6. Segment Trees
  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
  11. Fast Modulo Multiplication / Binary Exponention cpp python
  12. Meet in Middle
  13. Binary Search cpp python
  14. Matrix Exponention for Fibonacci Series
  15. Modular Multipicative Inverse using Fermat's Theorem
  16. Tries
  17. Bellman-Ford Algorithm
  18. Rabin-Karp Algorithm cpp python
  19. Binary Search Tree
  20. Sieve of Eratosthenes cpp python
  21. [Maximum Bipartite Matching](https://github.com/saru95/DSA/blob/master/MBM.c
  22. Floyd-Warshall Algorithm
  23. Pollard Rho Integer Factorization
  24. Binary Indexed Trees / BIT
  25. Square Root Decomposition
  26. Ford-Fulkerson Algorithm for Maximum Flow (BFS)/ Edmonds Karp Algorithm
  27. Miller Rabin Primality Test
  28. Fibonacci Numbers using fast doubling
  29. Generating Non-Fibonacci Numbers
  30. Segmented Sieve Method of Erastothenes