Course Schedule

 

Week Lessons Activities/Assessments

Week 1

Mon 01/10:

Lesson 1.1: Introduction (class meeting)

Lesson 1.2: Reasoning About Code Intro (video)

Pre-Class:

  • Complete Course Introduction
  • Get familiar with the course site. The home page is the syllabus!
  • Log into piazza and say hello, if you'd like!

Wed 01/12:

Lesson 1.3: Asymptotics (class meeting)

Fri 01/14: No class, no examlet, as usual for Fridays!

Intro Lab Due (Sunday)

Week 2

 

Mon 01/17:

Lesson 2.1: Correctness (class meeting)

Lesson 2.2: Selection Sort (video) 

PrairieLearn Practice W2

HW1 released

Wed 01/19:

Lesson 2.3: Insertion Sort (class meeting)

Fri 01/21:

Examlet W2 (focusing on 1.1-2.1)

Week 3

 

Mon 01/24:

Lesson 3.1: Introduction To Memory (class meeting)

Lesson 3.2: Linked Lists (video)

PrairieLearn Practice W3

HW1 Due

PA1 Released

Wed 01/26:

Lesson 3.3: More Linked Lists (class meeting)

Fri 01/28:

Examlet W3 (focusing on 2.2-3.1)

Debug Lab Due (Sunday)

Week 4

 

Mon 01/31:

Lesson 4.1: Stacks (class meeting)

Lesson 4.2: Queues (video)

PrairieLearn Practice W4

HW2 Released

Wed 02/02:

Lesson 4.3: Merge Sort (class meeting)

Fri 02/04:

Examlet W4 (focusing on 3.2-4.1)

Linked List Lab Due (Sunday)

Week 5

Mon 02/07:

Lesson 5.1: Sort Complexity (class meeting)

Lesson 5.2: Trees (video)

PrairieLearn Practice W5

PA1 Due

Wed 02/09:

Lesson 5.3: Tree Traversals (class meeting)

Fri 02/11:

Examlet W5 (focusing on 4.2-5.1)

"Quacks" Lab Due (Sunday)

Week 6

 

Mon 02/14:

Lesson 6.1: Level Order Traversal +  Dictionary ADT (class meeting)

Lesson 6.2: How many nulls? (video)

PrairieLearn Practice W6

PA2 Released

Wed 02/16:

Lesson 6.3: BST insert/find (class meeting)

Fri 02/18:

Examlet W6 (focusing on 5.2-6.1)

Trees Lab Due (Sunday, at the end of reading week)

Week 7

READING WEEK

Week 8

 

Mon 02/28:

Lesson 8.1: BST remove (class meeting)

Lesson 8.2: AVL Analysis (video)

PrairieLearn Practice W8

HW2 Due

Wed 03/02:

Lesson 8.3: AVL Insert/Remove (class meeting)

Fri 03/04:

Examlet W8 (focusing on 6.2-8.1)

Dict Lab Due (Sunday)

Week 9

 

Mon 03/07:

Lesson 9.1: BTrees  (class meeting)

Lesson 9.2: BTree Analysis (video)

PrairieLearn Practice W9

PA2 Due

PA3 Released

Wed 03/09:

Lesson 9.3: Hashing Intro (class meeting)

Fri 03/11:

Examlet W9 (focusing on 8.2-9.1)

AVL Lab Due (Sunday)

Week 10

 

Lesson 10.1: Hashing Collisions (video)

Lesson 10.2: Priority Queues (video)

 

ONLY VIDEOS THIS WEEK, NO EXAMLET

Week 11

 

Mon 03/21:

Lesson 11.1: Heaps (class meeting)

Lesson 11.2: Disjoint Sets (video)

PrairieLearn Practice W11

HW3 Released

Wed 03/23:

Lesson 11.3: Intro to Graphs (class meeting)

Fri 03/25:

Examlet W11 (focusing on 9.2-11.1)

Hashing Lab Due (Sunday)

Week 12

 

Mon 03/28:

Lesson 12.1: Graph Properties (class meeting)

Lesson 12.2: BFS (video)

PA3 Due

Wed 03/30:

Lesson 12.3: BFS & DFS (class meeting)

Fri 04/01:

Examlet W12 (focusing on 11.2-12.1)

Heaps Lab Due (Sunday)

Week 13

 

Mon 04/04:

Lesson 13.1: DFS (class meeting)

Lesson 13.2: MST (video)

HW3 Due (update: deadline extended to Apr 8)

PrairieLearn Practice W13

 

Wed 04/06:

Lesson 13.3: Shortest Path - Dijkstra's (class meeting)

Fri 04/08:

Last day of classes!

Examlet W13 (focusing on 12.2-13.1)

Graphs Lab Due (Sunday)

Final Date/Time TBD Exam