Algorithms
The design of algorithms and the rigorous analysis of their efficiency: algorithmic complexity, greedy algorithms, divide and conquer, dynamic programming, graph algorithms such as minimum spanning trees and shortest paths, network flow, and intractability.
Johns Hopkins · EN.601.433 · Spring 2023
Stable Matching
Algorithm Analysis
Graphs
- Undirected Graphs · Graph Representation · Graph Connectivity and Traversal · Connectivity in Directed Graphs · DAGs and Topological Ordering
Greedy Algorithms
- Coin Changing · Interview Scheduling · Interval Partitioning · Scheduling to minimize lateness. · Greedy Analysis Strategy · Dijkstra's Algorithm · Minimum Spanning Trees · Prim's Algorithm
Divide and Conquer
- Divide-and-conquer Paradigm · Mergesort · Counting Inversions · Randomized Quicksort · Closest Pair of Points · Median and Selection · Master Theorem · Integer Multiplication
Dynamic Programming
- Weighted Interval Scheduling · Maximum subarray problem · Segmented Least Squares · Knapsack Problem · Bellman Ford Algorithm