|
Dates |
Topics |
Slides/Example Code |
Reading Assignment |
Writen/Programming Assignment |
1/16, 1/19 |
Introduction |
Intro. slides (pdf)
Pattern slides(
pdf)
fibonacci code
|
Bubble Sort, selection sort explained
|
Self practice problems (not collected)
|
1/23 |
Recursion: sorting recursively |
slides (pdf)
|
Reading: Recursion 101
Erickson Ch1 Recursion
|
self-practice problems
Lab1 (due 1/30),
|
1/26 |
C++ STL & Programming |
slides (pdf)
STL example code
|
Tutorial on vector
Hashing table,
Heap, priority queue
|
|
1/30 |
Algorithm Analysis |
slides
(pdf)
|
|
hw1 (due 2/9)
|
2/2,2/6 |
Big-O notations |
slides (ppt)
|
S&W Section 1.4
|
In-class exercise(quiz1) on 2/2
|
2/9,2/13 |
Divide and Conquer |
slides (ppt)
|
Ch2.DPV (2.1-2.5, 2.3.1), Ch4.CLR
|
hw2 due 2/23, Friday, in-class |
2/16 |
Master Theorem, MergeSort, quicksort |
| |
|
2/23 |
Quicksort and beyond |
slides (ppt)
Radix Sort code
|
QuickSort explained,
TimSort
Ch1.DPV (1.1,1.2,1.5) |
lab2 due 3/8, Friday |
2/27 |
Problem Solving |
|
|
|
3/1, 3/5 |
Recursion II: combinatorial problems
|
slides (PPT)
Coin change code
|
|
Quiz1 (3/8, Friday): study guide |
3/12,3/15, 3/19 |
Midterm review, Midterm exam, Project overview |
|
|
|
4/2,4/5,4/9,4/12, 4/16 |
Dynamic Programming |
slides (pptx)
Rod Cutting code
|
Ch15.CLR, Ch6.DPV (6.2, 6.4, 6.6) |
lab3 due April 9th
lab4 signup due April 24
|
4/19,4/23,4/26 |
Graph: representation, application, traversal |
slides
Maze walking code
|
Ch3-4.DPV, Ch22.1-22.3.CLR
blog on graph
|
|
4/30 |
Review, Project |
Final review guide 1,
Review Guide 2
|
|
|
Final Exam |
5/10, Friday 1:30-3:30pm |
|
|
|
|