A collection of leetcode-style problems
Implemented in the order specified in the neetcode roadmap: https://neetcode.io/roadmap
In most cases, the solutions are implemented on golang. IMO, golang is low-level enough to gain a good understanding of algorithms, but without the added headache of manual memory management.
- Linked list
- Queue
- Stack
- Graph
- Tree
- Binary search Tree
- Max heap / priority queue
- Binary serach
- Quick sort
- Merge sort
- AVL Tree
- BFS
- DFS
- Dynamic programming
- longest common substring
- Levenshtein distance
- 0-1 Knapsack
- coin change problem
- Matrix chain multiplication
- Greedy algorithms
- Huffman coding
- Dijkstra's shortest path
- Kruskal's minimum spannign tree