Jan-12 - Jan-18
  • Assignments:
  • Wed, Jan 14 Lecture: Intro, Background & Language
    • Topics:
      • Intro, Background & Language
Jan-19 - Jan-25
  • Assignments:
  • Mon, Jan 19 Lecture: MLK Day, no class
  • Wed, Jan 21 Lecture: Guest Speaker: Transit Graph ADT
Jan-26 - Feb-01
  • Assignments:
    • HW1: Assigned on Mon, Jan 26
  • Mon, Jan 26 Lecture: Class cancelled Snow
    • Extra Resources:
      • Bhargava Ch.2-pg32
  • Wed, Jan 28 Lecture: DSSL2 Q&A, Linked lists, Arrays
Feb-02 - Feb-08
  • Assignments:
    • WS1: Assigned on Mon, Feb 02
  • Mon, Feb 02 Lecture: ADTs, Stack and Queue
    • Topics:
      • ADTs, Stack and Queue
  • Wed, Feb 04 Lecture: Asymptotic Analysis and Complexity
    • Topics:
      • Asymptotic Analysis and Complexity
    • Preparation:
      • 📖 Bhargava Ch.1
      • 📖 Cormen Ch.2
Feb-09 - Feb-15
  • Assignments:
    • HW2: Assigned on Mon, Feb 09
  • Mon, Feb 09 Lecture: DSSL2 Classes, Queues, Contracts
    • Topics:
      • DSSL2 Classes, Queues, Contracts
  • Wed, Feb 11 Lecture: Asymptotic Analysis and Complexity, Sorting
    • Topics:
      • Asymptotic Analysis and Complexity, Sorting
    • Preparation:
      • 📖 Cormen Ch.2
      • 📖 Cormen Ch.3-3.2
Feb-16 - Feb-22
  • Assignments:
  • Mon, Feb 16 Lecture: Simple Sorting Routines
    • Topics:
      • Simple Sorting Routines
  • Wed, Feb 18 Lecture: Quicksort
    • Topics:
      • Quicksort
    • Preparation:
      • 📖 Bhargava Ch.4
      • 📖 Cormen Ch.7
    • Extra Resources:
Feb-23 - Mar-01
  • Assignments:
  • Mon, Feb 23 Lecture: Sort Remainders: Merge, Stable, Compr
    • Topics:
      • Sort Remainders: Merge, Stable, Compr
    • Preparation:
      • 📖 Cormen Ch.2 (refresher)
    • Extra Resources:
  • Wed, Feb 25 Lecture: Dictionary ADTs, 1/2 Hash Tables
    • Topics:
      • Dictionary ADTs, 1/2 Hash Tables
    • Preparation:
      • 📖 Cormen Ch.11-11.3
Mar-02 - Mar-08
  • Assignments:
  • Mon, Mar 02 Lecture: No class (Spring Break)
  • Wed, Mar 04 Lecture: No class (Spring Break)
Mar-09 - Mar-15
  • Assignments:
    • WS2: Assigned on Mon, Mar 09
    • HW3: Assigned on Mon, Mar 09
  • Mon, Mar 09 Lecture: Hash tables 2/2
    • Preparation:
      • 📖 Cormen Ch.11.4
    • Extra Resources:
      • Cormen Ch.11.5
      • Bhargava Ch.5
  • Wed, Mar 11 Lecture: Graphs
    • Preparation:
      • 📖 Cormen Appendix B.4
      • 📖 Cormen Ch.20.1
    • Extra Resources:
      • Cormen Ch.11
      • Bhargava Ch.6-pg99
Mar-16 - Mar-22
  • Assignments:
  • Mon, Mar 16 Lecture: Midterm Review
  • Wed, Mar 18 Lecture: Graph Search
    • Preparation:
      • 📖 Cormen Ch.20.2 Breadth-first search
      • 📖 Cormen Ch.20.3 Depth-first search
      • 📖 Cormen Ch.20.4 Topological sort
    • Extra Resources:
      • Bhargava Ch.6, pg99-114
      • Bhargava Ch.7
      • Cormen Ch.20.5 Strongly connected components
Mar-23 - Mar-29
  • Assignments:
    • HW4: Assigned on Mon, Mar 23
  • Mon, Mar 23 Lecture: Midterm Exam
  • Wed, Mar 25 Lecture: Graph Search Pt. 2
    • Preparation:
      • 📖 Cormen Ch.20.2 Breadth-first search
      • 📖 Cormen Ch.20.3 Depth-first search
      • 📖 Cormen Ch.20.4 Topological sort
    • Extra Resources:
      • Bhargava Ch.6, pg99-114
      • Bhargava Ch.7
      • Cormen Ch.20.5 Strongly connected components
Mar-30 - Apr-05
  • Assignments:
    • HW5: Assigned on Mon, Mar 30
    • Algorithm Viva (Round 1): Assigned on Mon, Mar 30 | Assignment
  • Mon, Mar 30 Lecture: Heapsort
    • Preparation:
      • 📖 Cormen Ch.6
  • Wed, Apr 01 Lecture: Designing with Data Structures
    • Extra Resources:
      • Cormen Ch.17.2
Apr-06 - Apr-12
  • Assignments:
  • Mon, Apr 06 Lecture: No class (Easter)
  • Wed, Apr 08 Lecture: Unification Pt 1
    • Topics:
      • Robinson's Unification Algorithm
Apr-13 - Apr-19
  • Assignments:
    • HW6: Assigned on Mon, Apr 13
  • Mon, Apr 13 Lecture: Unification Pt 2
    • Topics:
      • Union-find based unification algorithm
  • Wed, Apr 15 Lecture: Minimum Spanning Trees
    • Preparation:
      • 📖 Cormen Ch.21
Apr-20 - Apr-26
  • Assignments:
  • Mon, Apr 20 Lecture: Binary Search Trees
    • Preparation:
      • 📖 Cormen Ch.12
  • Wed, Apr 22 Lecture: Amortized Analysis
    • Preparation:
      • 📖 Cormen Ch.16.1-16.3
Apr-27 - May-03
  • Assignments:
  • Mon, Apr 27 Lecture: Probabilistic Data Structures
    • Extra Resources:
      • Cormen Ch.11.3 (optional refresher)
  • Wed, Apr 29 Lecture: Persistent, Extended Example Conchon-Filiatre
May-04 - May-10
  • Assignments:
  • Mon, May 04 Lecture: Exam Review
    • Topics:
      • Exam Review