Reference purposes .
- Knuth-Morris-Pratt Algorithm cpp python
- Depth First Search w/o stack cpp python
- Depth First Search with stack
- Breadth First Search
- Suffix Arrays
- Segment Trees
- Segment Trees with Lazy Propogation
- Segment Trees with Max Prefix/Suffix Sum and Max Subvector sum
- Euler Totient Function cpp python
- Dijkstra's Algorithm cpp python
- Fast Modulo Multiplication / Binary Exponention
- Meet in Middle
- Binary Search cpp python
- Matrix Exponention for Fibonacci Series
- Modular Multipicative Inverse using Fermat's Theorem
- Tries
- Bellman-Ford Algorithm
- Rabin-Karp Algorithm cpp python
- Binary Search Tree
- Sieve of Eratosthenes cpp python
- [Maximum Bipartite Matching](https://github.com/saru95/DSA/blob/master/MBM.c
- Floyd-Warshall Algorithm
- Pollard Rho Integer Factorization
- Binary Indexed Trees / BIT
- Square Root Decomposition
- Ford-Fulkerson Algorithm for Maximum Flow (BFS)/ Edmonds Karp Algorithm
- Miller Rabin Primality Test
- Fibonacci Numbers using fast doubling
- Generating Non-Fibonacci Numbers
- Segmented Sieve Method of Erastothenes