Course Info.
Basic Data Structures.
Array, vector, and linked list [slides] [video (English)] [video (Chinese)].
Binary search [slides] [video (English)] [video (Chinese)].
Skip list [slides] [video (English)] [video (Chinese)].
Sorting.
Divide and Conquer.
- Master theorem [slides].
Matrix Data Structure and Algorithms.
Addition and multiplication [slides] [video (English)] [video (Chinese)].
Dense matrix data structures [slides] [video (English)] [video (Chinese)].
Sparse matrix data structures [slides]
Fast matrix multiplication and Strassen algorithm [slides].
Binary Trees.
Tree basics [slides] [video (English)].
Binary search tree: search and insertion [slides].
Binary search tree: traversal [slides].
Binary search tree: deletion [slides].
Balanced Trees.
Priority Queues.
Disjoint Sets.
- Disjoint sets [slides].
Graph Basics.
Graph data structures [slides] [video (Chinese)].
Topological sort [slides].
Shortest Paths.
Shortest path problem [slides] [video (Chinese)].
Single-source shortest path in unweighted graphs [slides] [video (Chinese)].
Single-source shortest path in weighted graphs [slides] [video (Chinese)].
Minimum Spanning Trees.
Spanning trees [slides] [video (Chinese)].
Prim's algorithm [slides] [video (Chinese)].
Kruskal's algorithm [slides] [video (Chinese)].
Network Flow Problems.
Maximum flow problem [slides] [video (Chinese)].
Ford-Fulkerson algorithm [slides] [video (Chinese)].
Edmonds–Karp algorithm [slides] [video (Chinese)].
Dinic's algorithm [slides] [video (Chinese)].
Max-flow and min-cut [slides] [video (Chinese)].
Bipartite Graphs.
Testing bipartiteness [slides] [video (Chinese)].
Maximum cardinality bipartite matching [slides] [video (Chinese)].
Maximum weight bipartite matching [slides] [video (Chinese)].
Hungarian algorithm [slides] [video (Chinese)].
Stable marriage problem [slides] [video (Chinese)].
Gale-Shapley algorithm [slides] [video (Chinese)].
Dynamic Programming.
Strings.
Randomized Algorithms.
Monte Carlo algorithms [slides] [video (English)] [video (Chinese)].
Concentration inequalities [slides].
Pseudo random number generators.
Random shuffling [slides] [video (English)] [video (Chinese)].
Fingerprinting.
Hashing.
Cryptographic Algorithms.
Crypto Currency.
Backtracking.
Latest commit
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|