CS106B
Course
Syllabus
Honor Code
Course Staff and Office Hours
The Big Course Resources Page
Lectures
About Lectures
Flat Lecture Index
1. 6/23 Welcome!
2. 6/24 C++ Fundamentals
3. 6/25 C++ Strings
4. 6/26 Testing, Vectors, and Grids
5. 6/30 Stacks and Queues
6. 7/1 Sets and Maps
7. 7/2 Big-O and Algorithmic Analysis
8. 7/7 Introduction to Recursion
9. 7/8 More Recursion
10. 7/9 Recursive Problem Solving
11. 7/10 Recursive Backtracking and Enumeration
12. 7/14 More Recursive Backtracking
13. 7/15 Sorting Algorithms
14. 7/16 Problem Solving Day
15. 7/21 Object-Oriented Programming
16. 7/22 Pointers and Arrays
17. 7/23 Dynamic Memory Management
18. 7/24 Priority Queues and Binary Heaps
19. 7/28 Introduction to Linked Lists
20. 7/29 More Linked Lists
21. 7/30 Binary Trees, Binary Search Trees, and Tree Traversals
22. 7/31 More on Binary Trees
23. 8/4 Huffman Coding
24. 8/5 Hashing
25. 8/6 Graphs
26. 8/7 Dijkstra and A* Shortest Path Algorithms
27. 8/11 Graph Coding
28. 8/12 Wrap
Sections
About Sections
Section Portal
Extra Section Problems (Pre-Midterm)
Extra Section Problems (Post-Midterm)
1. C++ fundamentals
2. ADTs!
3. Big O and Recursion
4. Recursive Backtracking
5. Classes and Dynamic Memory
6. Memory Management, Pointers, and Linked Lists
7. Tree Encoding
Assignments
About Assignments
0. Welcome to CS106B!
1. Getting Your C++ Legs
2. Fun with Collections
3. Recursion Etudes
4. Recursive Backtracking
5. Tone Matrix
6. Linked Lists
7. Huffman Coding
Exams
About Exams
Exam Prep Advice
Midterm Exam
Final Exam
📅 Schedule
🔍Search
⚠️ This page is not current. It is an archive from Summer Quarter 2025.
The current quarter's site is at
this link
.
Flat Lecture Index
Date
Lecture Materials
Tue, Aug. 12
28.
Wrap
Mon, Aug. 11
27.
Graph Coding
Thu, Aug. 7
26.
Dijkstra and A* Shortest Path Algorithms
Wed, Aug. 6
25.
Graphs
Tue, Aug. 5
24.
Hashing
Mon, Aug. 4
23.
Huffman Coding
Thu, Jul. 31
22.
More on Binary Trees
Wed, Jul. 30
21.
Binary Trees, Binary Search Trees, and Tree Traversals
Tue, Jul. 29
20.
More Linked Lists
Mon, Jul. 28
19.
Introduction to Linked Lists
Thu, Jul. 24
18.
Priority Queues and Binary Heaps
Wed, Jul. 23
17.
Dynamic Memory Management
Tue, Jul. 22
16.
Pointers and Arrays
Mon, Jul. 21
15.
Object-Oriented Programming
Wed, Jul. 16
14.
Problem Solving Day
Tue, Jul. 15
13.
Sorting Algorithms
Mon, Jul. 14
12.
More Recursive Backtracking
Thu, Jul. 10
11.
Recursive Backtracking and Enumeration
Wed, Jul. 9
10.
Recursive Problem Solving
Tue, Jul. 8
9.
More Recursion
Mon, Jul. 7
8.
Introduction to Recursion
Wed, Jul. 2
7.
Big-O and Algorithmic Analysis
Tue, Jul. 1
6.
Sets and Maps
Mon, Jun. 30
5.
Stacks and Queues
Thu, Jun. 26
4.
Testing, Vectors, and Grids
Wed, Jun. 25
3.
C++ Strings
Tue, Jun. 24
2.
C++ Fundamentals
Mon, Jun. 23
1.
Welcome!