Introduction to Algorithms

Textbook

  • Introduction to Algorithms,  (Second Edition) Thomas Cormen, Charles Leiserson, Ronald Rivest, and Clifford Stein. MIT Press.

Other Useful References

  • Randomized Algorithms, by Motwani and Raghavan
  • The Art of Computer Programming, Volume 1, Donald E. Knuth, Addison-Wesley.
  • Algorithms in C++, Robert Sedgewick, Addison-Wesley
Useful links:
No.
Agenda ( Notes in PDF and PPT)
HW Assigned
1
 Class is cancelled due to hurricane preparation

2
Course Organization, Introduction, Ch 1, 2; App A, B, C (Lecture Slides, Math Review by Prof. Chris Brown)

3
Chapter 2: Get Started  (Lecture Notes)
Chapter 3:  Growth of Functions (Lecture Notes)
HW1 (Due: Sept. 19)

4
Chapter 3,4:  Growth function and Recurrence  (Lecture Notes)  (Quiz 1 With Answers)  (Section 5 of Math Review by Prof. Chris Brown)

5
Chapter 4:  Master Method (Lecture Notes)

6
Chapter 6. Heap Sort (Lecture Notes) (Example from the Book)

7
Chapter 6,7: Heap Sort and Quick Sort (Lecture Notes)
HW2 (Due: Sept. 28)
8
Chapter 8: Sorting Summary (Lecture Notes) and Sorting in Linear Time (Lecture Notes)

9
Chapter 9: Medians and Order Statistics (Lecture Notes)

10
HW3 (Due: Oct. 10)
11
Chapter 11: Hash Table: open addressing

12
Chapter 12: Binary Search Tree (Lecture Notes)

13
Chapter 13: Red-Black Tree (Lecture Notes I) (Lecture Notes II)
HW4 (will not be collected)
14
Chapter 14: Augmenting Data Structures (Lecture Notes)

15
Midterm Review (Red Black Tree Demo)

16
Midterm 

17
Go over Midterm Exam

18
Chapter 15: Dynamic Programming (Lecture Notes) (Examples)
HW 5 (Due Nov. 9th)
19
Chapter 15: Dynamic Programming II (Lecture Notes) (Lecture Notes II)

20
Chapter 16: Greedy Algorithms (Lecture Notes)

21
Chapter 17: Amortized Analysis (Lecture Notes)

22
Chapter 18 B-tree (Lecture Notes I) (Lecture Notes II)

23
Chapter 18 B-tree (Lecture Notes I) (Lecture Notes II)
HW 6 (Due Nov. 28th)
24
Chapter 19: Binomial Heaps (Lecture Notes) (Lecture Notes II)

25
Chapter 20: Fibonacci Heap (Lecture Notes) (Lecture Notes II)

27
Thanksgiving Holiday

28
Chapter 22: Graphs Algorithms (Lecture Notes) (Lecture Notes II)

29
Chapter 23: Minimum Spanning Tree  (Lecture Notes)
30
Chapter 24: Single-Source Shortest Path  (Lecture Notes) (Lecture Notes II)

31
Final Exam

No comments: