Computer Science 445

Analysis of Algorithms
Fall 2006
Thomas VanDrunen



Meeting time: MWF 2:00 - 3:05 pm
Meeting place: Armerding 123
Office hours: Tu/Th 10:30 - 11:30 am, 1:00-3:30 pm.
Contact: 112 Armerding; 752-5692; Thomas.VanDrunen@wheaton.edu
http://cslab.wheaton.edu/~tvandrun/previous/fall06/cs445

Syllabus: ps pdf






Moon's dayWoden' s dayFrigga's day

Aug 21

NO CLASS

Aug 23

Elementary analysis. Prologue, nature of algorithms (1)

Aug 25

First attempt at analysis (2)

Small sorting assignment

Aug 28

Divide and conquer (2.3)

Pg 21: 2.1-2; pg 27: 2.2-3; pg 36: 2.3-3,5; pg 38, 2.2. Due 9/1

Aug 30

Asymptotics (3)

Sept 1

More asymptotics

Pg 50: 3.1-(2, 4, 7); pg 57: 3-1d&e, 3-4. Due 9/8

Sept 4

NO CLASS

Sept 6

Recurrences (4)

Sept 8

The master method (4.3 & 4.4)

Pg 67: 4.1-(1, 5, 6); pg 75: 4.3-1; pg 85: 4-3a, 4-6. Due 9/13

Sept 11

Quicksort (7)

Sept 13

Homework catch-up

Sept 15

Quicksort

Pg 148: 7.1-(2-4); Pg 153: 7.2-(3 & 4); Pg 159: 7-1(b,c,d,), 7-3. Due 9/20
7.2-3--- only need show O(n)
7.2-4--- would bubble sort also beat?

Sept 18

Linear sorting: radix and bucket (8)

Sort project, due Oct 11

Sept 20

Linear sorting; Sorting networks and bitonic sort(27)

Sept 22

Sorting networks and bitonic sort

Pg 708: 27.1-(3, 6); pg 771: 27.2-1; pg 719: 27.5-1; pg 722: 27-3

Sept 25

Data structures. Heaps, the heapsort, and priority queues (6)

Sept 27

Tree review, BSTs (12)

Pg 142: 6.5-(5, 6, 8); 6-1; pg 260: 12.2-(5, 6, 9); pg 264: 12.3-(2,5); pg 287: 13.3-5; pg 293: 13.4-1

Sept 29

Red/black trees (13)

Oct 2

Advanced analysis. Dynamic programming (15)

Oct 4

More dynamic programming

Oct 6

Dynamic programming

Pg 369:15-7; pg 384: 16.2-(2, 3, 5); handout, 1 and 2.

Oct 9

Greedy algorithms (16)
slide

Oct 11

More greedy algorithms

Oct 13

Greedy algorithms example

Oct 16

NO CLASS

Oct 18

Review

Oct 20

MIDTERM

Oct 23

NO CLASS

Oct 25

NO CLASS

Oct 27

Amortized analysis (17)

17.(1-3,2-2,3-2)

Oct 30

Graph algorithms. Review graphs and breadth first search

Sudoku project, due Dec 4

Nov 1

More breadth first search

Nov 3

Depth first seach and topological sort

22.2-3,6; 22.3-4,7,8; 22.4-3; 22-2:a,b,e,f

Nov 6

SSSP and Bellman-Ford (24.1)

Nov 8

Dijkstra's algorithm (24.3-5)

Nov 10

APSP and Floyd-Warshall (25.1-2)

24.3-3, 24-6, 25.1-6, 25.2-(3-7)

Nov 13

Flow networks (26.1)

Nov 15

Ford-Fulkerson (26.2)

Nov 17

Edmonds-Karp (26.2)

26.1-(1,2), 26.2-(1, 4, 9), 26-1

Nov 20

NP Completeness. NP-completeness introduction, polynomial time (34.1)

Nov 22

NO CLASS

Nov 24

NO CLASS

Nov 27

Polynomial verification (34.2)

Nov 29

Reduction and NP-completeness proofs (34.3&4)

Dec 1

NP-completeness problems (34.5)

Dec 4

Approximation algorithms (35)

Dec 6

More approximation algorithms

Dec 8

Review