Lectures
Week 1
- Labour Day
- Lecture 1 - Philosophy. There are no slides for lecture 1.
- Lecture 2 - Course overview. slides
Week 2
- Lecture 3 - Object-oriented design. slides
- Lecture 4 - Inheritance and Polymorphism. slides
- Lecture 5 - Interfaces, Templates, and Exceptions. slides
Week 3
Week 4
- Lecture 9 - Analysis of Algorithms. slides
- Lecture 10 - Analysis of Algorithms, part II. Slides same as Lecture 9.
- Lecture 11 - Stacks. slides
Week 5
- Lecture 12 - Queues and Deques. slides
- Lecture 13 - Adapters. slides
- Lecture 14 - Array Lists. slides
Week 6
- Thanksgiving
- Lecture 15 - Lists. slides
- Lecture 16 - Iterators and Sequences. slides
Week 7
- Lecture 17 - Trees. slides
- Lecture 18 - Binary Trees. slides
- Lecture 19 - Priority Queues. slides
Week 8
- Lecture 20 - Heaps. slides
- Midterm
- Lecture 21 - Adjustable Priority Queues and Maps slides
Week 9
- Lecture 22 - Hash Tables slides
- cancelled
- Lecture 23 - Ordered Maps and Skip Lists slides
Week 10
- Lecture 24 Dictionaries and Binary Search Trees. slides
- Remembrance Day
- Lecture 25 AVL Trees and (2,4)-Trees. slides
Week 11
- Lecture 26 Splay Trees. slides
- Lecture 27 Mergesort and Sorting Lower Bound. slides
- Lecture 28 Quicksort, Bucket Sort, Radix Sort. slides
Week 12
- Lecture 29 Divide-and-Conquer: Recurrence Equations. slides
- Lecture 30 Sets and Union-Find. slides
- Lecture 31 Selection. slides
Week 13
- Lecture 32 Dynamic Programming. slides
- Lecture 33 Greedy, Text Compression, and Tries. slides
- Lecture 34 String and Pattern Matching. slides
Updated Thu Dec. 03 2020, 21:38 by shermer.