Search this site
Embedded Files
Skip to main content
Skip to navigation
CS 312 - Algorithms [S20]
Home
Schedule (remote)
In-person Schedule
Syllabus
Notes
Notes 1 - algorithm design & SRL
Notes 2 - stable matching
Notes 3 - asymptotic analysis (big-O)
Notes 4 - asymptotic analysis (big-O, big-Omega)
Notes 5 - asymptotic analysis (big-Theta)
Notes 6 - graphs (basics & representations)
Notes 7 - graphs (DFS)
Notes 8 - graphs (DFS + BFS)
Notes 9 - graphs (BFS)
Notes 10 - bipartite graphs
Notes 11 - directed graphs & topological ordering
Notes 12 - greedy algorithms (stay ahead)
Notes 13 - greedy algorithms (stay ahead) - Dijkstra's
Notes 14 - greedy algorithms (exchange) - MST & union-find
Notes 15 - greedy algorithms (exchange) - interval lateness
Notes 16 - greedy algorithms (exchange) - matroids
Notes 17 - divide and conquer (recursion tree/unrolling)
Notes 18 - divide and conquer (master theorem)
Notes 18.5 - divide and conquer (substitution)
Notes 19 - dynamic programming
Dynamic Programming (memoization) - worksheet
Notes 20 - network flow
Notes 21 - Intractability
Notes 22 - bonus topics
Homework
Peer Instruction Activities
Homework 0
Homework 1
Homework 2
Homework 3
Homework 4
Homework 5
Homework 6
Homework 7 (remote)
Homework 8
Homework 9
Extra credit opportunities
Tools & Resources
CS 312 - Algorithms [S20]
Home
Schedule (remote)
In-person Schedule
Syllabus
Notes
Notes 1 - algorithm design & SRL
Notes 2 - stable matching
Notes 3 - asymptotic analysis (big-O)
Notes 4 - asymptotic analysis (big-O, big-Omega)
Notes 5 - asymptotic analysis (big-Theta)
Notes 6 - graphs (basics & representations)
Notes 7 - graphs (DFS)
Notes 8 - graphs (DFS + BFS)
Notes 9 - graphs (BFS)
Notes 10 - bipartite graphs
Notes 11 - directed graphs & topological ordering
Notes 12 - greedy algorithms (stay ahead)
Notes 13 - greedy algorithms (stay ahead) - Dijkstra's
Notes 14 - greedy algorithms (exchange) - MST & union-find
Notes 15 - greedy algorithms (exchange) - interval lateness
Notes 16 - greedy algorithms (exchange) - matroids
Notes 17 - divide and conquer (recursion tree/unrolling)
Notes 18 - divide and conquer (master theorem)
Notes 18.5 - divide and conquer (substitution)
Notes 19 - dynamic programming
Dynamic Programming (memoization) - worksheet
Notes 20 - network flow
Notes 21 - Intractability
Notes 22 - bonus topics
Homework
Peer Instruction Activities
Homework 0
Homework 1
Homework 2
Homework 3
Homework 4
Homework 5
Homework 6
Homework 7 (remote)
Homework 8
Homework 9
Extra credit opportunities
Tools & Resources
More
Home
Schedule (remote)
In-person Schedule
Syllabus
Notes
Notes 1 - algorithm design & SRL
Notes 2 - stable matching
Notes 3 - asymptotic analysis (big-O)
Notes 4 - asymptotic analysis (big-O, big-Omega)
Notes 5 - asymptotic analysis (big-Theta)
Notes 6 - graphs (basics & representations)
Notes 7 - graphs (DFS)
Notes 8 - graphs (DFS + BFS)
Notes 9 - graphs (BFS)
Notes 10 - bipartite graphs
Notes 11 - directed graphs & topological ordering
Notes 12 - greedy algorithms (stay ahead)
Notes 13 - greedy algorithms (stay ahead) - Dijkstra's
Notes 14 - greedy algorithms (exchange) - MST & union-find
Notes 15 - greedy algorithms (exchange) - interval lateness
Notes 16 - greedy algorithms (exchange) - matroids
Notes 17 - divide and conquer (recursion tree/unrolling)
Notes 18 - divide and conquer (master theorem)
Notes 18.5 - divide and conquer (substitution)
Notes 19 - dynamic programming
Dynamic Programming (memoization) - worksheet
Notes 20 - network flow
Notes 21 - Intractability
Notes 22 - bonus topics
Homework
Peer Instruction Activities
Homework 0
Homework 1
Homework 2
Homework 3
Homework 4
Homework 5
Homework 6
Homework 7 (remote)
Homework 8
Homework 9
Extra credit opportunities
Tools & Resources
Notes 14
greedy algorithms
exchange - MST & union-find
CS 312 Notes 15: greedy algorithms (exchange) - MST
Report abuse
Report abuse