Skip to main content

The lecture schedule is tentative and subject to change as the term progresses.

Date Topic Required Readings
Thu, Jan 17, 2019 Review of CIS 160 and Stable Matching
  • Stable matching
Tue, Jan 22, 2019 Greatest Common Divisor, Insertion Sort
  • CLRS 2.1, 2.2
Thu, Jan 24, 2019 Running Time and Growth Functions
  • CLRS Chapter 3
Tue, Jan 29, 2019 Running Time and Recurrence Relations
Thu, Jan 31, 2019 Divide and Conquer
Tue, Feb 5, 2019 Quick Sort, Counting Inversions, Deterministic Selection
Thu, Feb 7, 2019 Deterministic Selection, Randomized Quicksort, Integer Multiplication
Tue, Feb 12, 2019 Integer Multiplication, Stacks and Queues, Heaps
Thu, Feb 14, 2019 Heaps, Huffman Coding
Tue, Feb 19, 2019 Huffman Coding
Thu, Feb 21, 2019 Midterm 1 (in-class)
Fri, Feb 22, 2019 Drop Period Ends
Tue, Feb 26, 2019 Breadth-First-Search / Depth-First Search
Thu, Feb 28, 2019 Bipartiteness, Topological Sort
Tue, Mar 5, 2019 Spring Break
Thu, Mar 7, 2019 Spring Break
Tue, Mar 12, 2019 Topological Sort, Shortest Paths
Thu, Mar 14, 2019 Minimum Spanning Trees
Tue, Mar 19, 2019 Union-Find
Thu, Mar 21, 2019 Strongly Connected Components
Tue, Mar 26, 2019 Tries
Thu, Mar 28, 2019 Hashing
Tue, Apr 2, 2019 Hashing (Open Addressing)
Thu, Apr 4, 2019 Midterm 2 (in-class)
Fri, Apr 5, 2019 Last day to withdraw from a course
Tue, Apr 9, 2019 Hashing (Open Addressing), Binary Search Trees
Thu, Apr 11, 2019 Binary Search Trees & AVL Trees
Tue, Apr 16, 2019 Skip Lists
Thu, Apr 18, 2019 Skip Lists
Tue, Apr 23, 2019 Advanced Topics: Min Cut and Randomized 2 SAT
Thu, Apr 25, 2019 Advanced Topics: Interval Scheduling
Tue, Apr 30, 2019 Advanced Topics: TBD
Wed, May 8, 2019 Final Exam (6-8pm)
  • Tentative until confirmed by registrar