Skip to main content

CS Notes

Computer science notes for algorithms, theory, systems, and more.

Stable Matching

Gale-Shapley algorithm, proofs of stability and optimality.

Greedy Algorithms

Interval scheduling, minimum spanning tree (Kruskal's, Prim's). Exchange arguments and greedy-stays-ahead proofs.

Dynamic Programming

Top-down, bottom-up styles. Bellman Ford, Segmented Least Squares

Divide and Conquer

Fast Fourier Transform, randomized median finding. Recurrences and the Master Theorem.

Network Flow

Ford-Fulkerson, max-flow min-cut theorem, bipartite matching, and reductions.

NP-Completeness

P vs. NP, polynomial-time reductions, NP-hard and NP-complete problems.

Computability

Turing Machines, Recognizability, Decidability, Halting Problem