Lecture Topics Winter 2009

  • NOTE: dates with 09 are updated lecture topics, others are old prior prior years.
  • 1. 1/5/09. Introduction (Why algorithms, growth rates ) Chapter 1 Coin Changing (program on web page)

  • 2. 1/7/09 Coin Changing (memioziation), Selection (9.2), Closest Point algorithm (33.4)

  • 3. 1/9/09 Closest Point algorithm (33.4), Recurrence Relations (4.2)

  • 4. 1/12/09 Recurrence Relations: iteration and simplified master method (4.2-4.3), Handout 1

  • 5. 1/14/09 Recurrence Relations (4.1), Randomized Algorithms, hiring (5.1)

  • 6. 1/16/09 Randomized Algorithms (5.2), Hashing: Intro. Chaining (11.1, 11.2),

  • 7. 1/21/09 Hashing: Chaining (11.1, 11.2), Expected performance, Linear probing (11.4)

  • 8. 1/23/09 Hashing: Expected performance Double Hashing (11.4), Dynamic Programming

  • 9. 1/26/09 Dynamic Programming: Assembly line (15.1 ), Subset Sum (Handout 2)

  • 10. 1/28/09 Dynamic Programming: LCS 15.4, Knapsack (16.2)

  • 11. 1/30/09 Greedy : Knapsack (16.2), Activity Selection (16.1)

  • 12. 2/2/09 Greedy : stable marriage: (not in book, web link on main page), weighted activity selection as longest path

  • 13. 2/4/09 Graphs: representations, BFS,(22)

  • 14. 2/6/09 DFS, topological sort, Strong Components (22.5);

  • 15. 2/9/09 Midterm

  • 16. 2/11/09 MST: Kruskal's, Prims, (23)

  • 17. 2/13/09 MST: Prims, implementation (23), on Prim's expected performance, Intro shortest paths

  • 18. 2/18/09 Shortest paths: Bellman Ford (24.1),

  • 19. 2/20/09 Shortest paths: Dijkstra (24.3), Acycllic shortest paths (24.2), all pairs (25.2)

  • 20. 2/23/09 Network Flows: 26.1,2

  • 21. 2/25/09 Network Flow: Applications: Matching (26.3), disjoint paths, unit and integral flows

  • 22. 2/27/09 Data Compression: Huffman codes (16.3), Lempel-Ziv (Web link), Gzip (Web handouts)

  • 23. 3/2/09 Gzip,

  • 24. 3/4/09 P,NP: easy/hard problems, (34, 34.2, 34.3-34.4)
  • 25. 3/6/09 More on P,NP: easy/hard problems, reductions (34.3-34.4)

  • 26. 3/9/09 Approximation Algorithms: Vertex cover (35.1) and TSP (35.2) Bin packing

  • 27. 3/11/09 Approximation algorithms: TSP 35.2, Bin packing, special cases: verex cover on a tree

  • 28. 3/13/09 String matching: brute force, Finite State Machines (34.1, 34.3), Handout D

  • 29. 3/16/09 approximate string matching (web handout G)