This is the (incomplete) list of 100 algorithms and data structures that I want to understand. I also aim to implement all of these.
- Insertion Sort
- Merge Sort
- Quick Sort
- Heap Sort
- Bubble Sort
- Radix Sort
- Bucket Sort
- Binary Search Tree
- Threaded Binary Search Tree
- Red Black Tree
- Suffix Tree
- Prefix Tree
- B Trees
- Depth First and Breadth First Search
- Prim's Algorithm
- Krushkall's Algorihtm
- Dijkstra's Algorithm
- Bellman Ford Algorithm
- Floyd-Warshall Algorithm
- Travelling Sales Person Problem
- Chinese Postman Problem
- Optimal Assignment Problem
- Timetabling Problem
- Storage Problem
- Job Sequencing Problem
- Jonson's Algorithm
- Ford-Fulkerson's Algorithm
- Robin Karp Algorithm for string seaerch
- KMP
- Edit Distance
- Heap Sort, Adding, Deleting, Min-Max Heaps
- Priority Queues
- Fibonacci Heaps
- Rod Cutting Problem
- Matrix Chain Multiplication
- OBSTs
- Knapsack Problem
- Strassen's Matrix Multiplication
- Huffman Code
- Convex Hull Problem
- Finding closest pair of points