Chapter 1: Introduction to Algorithms (Binary Search)
Concept: Binary Search
Chapter 2: Selection Sort
Concept: Selection Sort
- Easy: #905. Sort Array By Parity
- Medium: #912. Sort an Array
- Medium: #148. Sort List
Chapter 3: Recursion
Concept: Recursion basics and call stacks
- Easy: #206. Reverse Linked List
- Medium: #50. Pow(x, n)
- Medium: #17. Letter Combinations of a Phone Number
Chapter 4: Quicksort
Concept: Quicksort (and Quickselect)
Chapter 5: Hash Tables
Concept: Using hash maps for O(1) lookups
- Easy: #1. Two Sum
- Medium: #49. Group Anagrams
- Medium: #347. Top K Frequent Elements
Chapter 6: Breadth-First Search (BFS)
Concept: Graph traversal using BFS
- Easy: #111. Minimum Depth of Binary Tree
- Medium: #102. Binary Tree Level Order Traversal
- Medium: #994. Rotting Oranges
Chapter 7: Dijkstra’s Algorithm
Concept: Finding shortest paths in weighted graphs
- Easy (Graph BFS/DFS): #1971. Find if Path Exists in Graph
- Medium (Dijkstra’s): #743. Network Delay Time
- Medium (Dijkstra’s): #1631. Path With Minimum Effort
Chapter 8: Greedy Algorithms
Concept: Greedy approach for set cover, interval scheduling, etc.
Chapter 9: Dynamic Programming
Concept: Breaking down problems into overlapping subproblems
- Easy: #70. Climbing Stairs
- Medium: #62. Unique Paths
- Medium: #322. Coin Change
Chapter 10: k-Nearest Neighbors (k-NN)
Concept: Distance-based “k-th” searching & classification analogy
- Easy (k-th concept): #414. Third Maximum Number
- Medium (k-NN style distance): #973. K Closest Points to Origin
- Medium (k-NN style distance): #658. Find K Closest Elements