Instructor |
Navigate to a topic: Algorithm Analysis | Divide and Conquer | Sorting Lower Bounds | Fundamental Graph Algorithms | Greedy Algorithms | Dynamic Programming | Network Flow | Intractable Problems
Lecture | Date | Description | Course Materials |
---|---|---|---|
Lecture 1 | 8/21 |
Introduction
Concepts: What is a better algorithm?
|
|
Lecture 2 | 8/26 |
Algorithm Analysis
Concepts: Explore core concepts via the InsertionSort
|
|
Lecture 3 | 8/28 |
Divide and Conquer
Concepts: Introduction to Divide and Conquer
|
[HW1 Out] Due: 9/3 |
- | 9/2 | No Class: Labor Day | |
Lecture 4 | 9/4 |
Divide and Conquer
Concepts: MergeSort and Its Applications
|
Quiz 1 in class [HW2 Out] Due: 9/10 |
Lecture 5 | 9/9 |
Divide and Conquer
Concepts: Whiteboarding Problem Session
|
[Program 1 Out] |
Lecture 6 | 9/11 |
Sorting Lower Bounds
Concepts: Reaching linear-time sorting
|
Quiz 2 in class [HW3 Out] Due: 9/17 |
Lecture 7 | 9/16 |
Fundamental Graph Algorithms
Concepts: DFS Applications
|
[Program 1 Design Document Due] |
Lecture 8 | 9/18 |
Fundamental Graph Algorithms
Concepts: BFS Applications
|
Quiz 3 in class [HW4 Out] Due: 9/24 [Program 1 Test Cases Due] |
Lecture 9 | 9/23 |
Fundamental Graph Algorithms
Concepts: Whiteboarding Problem Session
|
[Review Assignment 1 Out] |
Lecture 10 | 9/25 |
Greedy Algorithms
Concepts: Dijkstra's
|
Quiz 4 in class [Program 1 Code Due] [Program 1 Reflection Due] |
Lecture 11 | 9/30 |
Greedy Algorithms
Concepts: Minimum Spanning Trees
|
|
- | 10/2 | Exam 1 |
[HW5 Out] Due: 10/8 |
Lecture 12 | 10/7 |
Greedy Algorithms
Concepts: Further exploring greedy algorithms
|
|
Lecture 13 | 10/9 |
Greedy Algorithms
Concepts: Whiteboarding Problem Session
|
Quiz 5 in class [HW6 Out] Due: 10/15 [Program 2 Out] |
- | 10/14 | Fall Break | |
Lecture 14 | 10/16 |
Dynamic Programming
Concepts: Top Down vs. Bottom Up
|
Quiz 6 in class [HW7 Out] Due: 10/22 |
Lecture 15 | 10/21 |
Dynamic Programming
Concepts: Unbounded Knapsack
|
[Program 2 Test Cases Due] |
Lecture 16 | 10/23 |
Dynamic Programming
Concepts: 0/1 Knapsack
|
Quiz 7 in class [HW8 Out] Due: 10/29 [Program 2 Design Document Due] |
- | 10/28 |
Googley Day
Concepts: What do CS majors do in the real world?
|
[Program 2 Code Due] [Program 2 Reflection Due] |
Lecture 17 | 10/30 |
Dynamic Programming
Concepts: Bellman Ford
|
Quiz 8 in class |
Lecture 18 | 11/04 |
Dynamic Programming
Concepts: Whiteboarding Problem Session
|
[Program 3 Out] |
- | 11/06 | Exam 2 |
[HW9 Out] Due: 11/12 |
Lecture 19 | 11/11 |
Network Flow
Concepts: Min-Cut
|
|
Lecture 20 | 11/13 |
Network Flow
Concepts: Max-Flow, Min-Cut
|
Quiz 9 in class [HW10 Out] Due: 11/19 [Program 3 Test Cases Due] |
Lecture 21 | 11/18 |
Network Flow
Concepts: Deeper look at augmenting path
|
[Program 3 Design Document Due] |
Lecture 22 | 11/20 |
Network Flow
Concepts: Whiteboarding Problem Session
|
Quiz 10 in class [HW11 Out] Due: 12/1 |
Lecture 23 | 11/25 |
Intractable Problems
Concepts: NP, NP-Complete
|
[Program 3 Code Due] [Program 3 Reflection Due] |
- | 11/27 | Thanksgiving Break! | |
Lecture 24 | 12/2 |
Intractable Problems
Concepts: NP-Complete Reductions
|
Quiz 11 in class [Review Assignment 3 Out] Due: 12/12 |
Lecture 25 | 12/4 |
Intractable Problems
Concepts: Whiteboarding Session
|
|
- | 12/12 | Exam 3 |