This is a preview of the schedule planned for the quarter. We will update this schedule as we go. Keep in mind that this page should faithfully describe the past, but it won't always accurately predict the future.

Assignment due dates are expressed as 11:59pm local time, meaning that you have until the clock on your computer strikes midnight on the indicated day to turn in the assginment.

Lectures will be delivered via Zoom MTWTh 11:30am-12:20pm PST. You're encouraged to join us live if possible. We will also post the recording for later asynchronous viewing. You can access the lecture zoom room and recordings from our course Canvas page.

  Monday Tuesday Wednesday Thursday Section/Assign
1

Jun 22

πŸ““Welcome!

Reading: 1.1, 1.3
A0 Released

Jun 23

πŸ““Programming Fundamentals in C++

Reading: 1.2, 1.4-1.7, 2.1-2.4
A1 Released

Jun 24

πŸ““Strings and Testing

Reading: 3.1-3.7
A0 Due

Jun 25

πŸ““Console Programs and Vectors

Reading: 2.5-2.9, 5.1
2

Jun 29

πŸ““Ordered Data Structures


Reading: 5.1-5.3

Jun 30

πŸ““Unordered Data Structures


Reading: 5.4, 5.5

A1 Due

Jul 1

πŸ““Using Abstractions (Breadth-First Search)

Reading: 5.6
A2 Released

Jul 2

πŸ““Big-O Notation and Algorithmic Analysis

Reading: 10.2
3

Jul 6

πŸ““Introduction to Recursion


Reading: 7.1-7.3

Jul 7

πŸ““Recursive Fractals


Reading: 7.4, 8.4

Jul 8

πŸ““Why We Use Recursion


Reading: 8.1-8.3

A2 Due

Jul 9

πŸ““Recursive Backtracking and Enumeration

Reading: 9.1-9.3
A3 Released
4

Jul 13

πŸ““Recursive Backtracking Revisited


Reading: 8.2, 9.1-9.2

Jul 14

πŸ““Recursive Optimization and Review


Reading: 9.3

Jul 15

πŸ““Object-Oriented Programming


Reading: 6.1-6.5

Jul 16

πŸ““Dynamic Memory and Arrays


Reading: 11.1, 11.3, 12.1

A3 Due, Diagnostic Friday-Sunday (6/17-6/19)
5

Jul 20

πŸ““Implementing an ADT


Reading: 12.1, 12.3, 12.4, 13.3, 14.4

A4 Released

Jul 21

πŸ““Priority Queues and Heaps


Reading: 14.3, 16.5

Jul 22

πŸ““Memory and Pointers


Reading: 11.1, 11.2, 11.4

Jul 23

πŸ““Introduction to Linked Lists


Reading: 12.2. 13.5

6

Jul 27

πŸ““Linked List Operations


Reading: 14.2 - 14.4

A4 Due

Jul 28

πŸ““Linked List Wrapup and Intro to Sorting

Reading: 14.2 - 14.4, 10.1, 10.2
A5 Released

Jul 29

πŸ““Advanced Sorting (Divide-and-Conquer)

Reading: 10.3, 10.4, 10.5

Jul 30

Final Project Advising (Optional)


7

Aug 3

πŸ““Trees


Reading: 16.1

Aug 4

πŸ““Binary Search Trees


Reading: 16.2 - 16.4

A5 Due

Aug 5

πŸ““Huffman Coding

Reading: Supplemental Info in Assignment Handout
A6 Released

Aug 6

πŸ““Hashing


Reading: 15.3

8

Aug 10

πŸ““Graphs and Graph Algorithms


Final project write-up due (Sunday August 9 at 11:59pm)

Aug 11

πŸ““Multithreading and Parallel Computing


Aug 12

πŸ““Life after CS106B


A6 Due (Hard Deadline)

Aug 13

No Class


Final Presentations Thursday-Sunday (6/13-6/16)