- Problems with linear or sublinear complexity
- Divide and conquer method, searching and sorting
- Greedy method
- Dynamic programming
- Algorithms on graphs
- Network Flow; Additional Network Flow Problems
- NP-completeness and approximation algorithms
My Solution | TA's Solution | Problems | Algorithms | Graded Problems | Scores | Corresponding Leetcode Problem | |
---|---|---|---|---|---|---|---|
Homework0 | Solution0 | Solution0 | 1. Maximum sum among nonadjacent subsequences 2. Maximum difference in an array 3. Maximum difference in a matrix 4. Pond sizes 5. Frequent elements |
DP; DFS; ... | 1, 3 | 20/20 points | 1 -> House Robber 2 -> Best time to buy and sell stock |
Homework1 | Solution1 | Solution1 | 1. Maximum weight subtree 2. Sorted matrix search 3. Largest set of indices within a given distance 4. Toeplitz matrices |
DP; DC; FFT; ... | 2, 3 | 19/20 points | 2 -> Search a 2D Matrix |
Homework2 | Solution2 | Solution2 | 1. Maximum Length Chain of Subwords 2. Business plan 3. Minimum Cost Sum 4. Speech recognition |
DP; Greedy | 1, 2 | 18/20 points | 1 -> Longest String Chain |
Homework3 | Solution3 | Solution3 | 1. Graph cohesiveness 2. Remote Sensors 3. Scheduling in a medical consulting firm 4. Cellular network |
Network Flow; | 2, 4 | 19/20 points | |
Homework4 | Solution4 | Solution4 | 1. Hamiltonian path 2. Heaviest first 3. Scheduling 4. Maximum coverage |
NP complete; Approximation | 1, 2 | /20 points |