Skip to main content

CS 61B Spring 2024

Wk.DateLecture ReadingsDiscussion
LabHomeworkProject
1 Wed
Jan 17
1. Intro
Video | Recording
Ch 1No DiscussionLab 1: Setup
(due 1/19)
Homework 0A
(due 1/19)
Fri
Jan 19
2. Defining and Using Classes
Video | Recording
Ch 2Homework 0B
(due 1/22)
Project 0: 2048
(due 1/29)
2 Mon
Jan 22
3. Lists I: References, Recursion, and Lists
Video | Recording
Ch 31. Introduction to Java
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides
Lab 2: Debugging I
(due 1/26)
Wed
Jan 24
4. Lists II: SLLists
Video | Recording
Ch 4Homework 1
(due 1/26)
Fri
Jan 26
5. Lists III: DLLists and Arrays
Video | Recording
Ch 5, Ch 6
3 Mon
Jan 29
6. Testing
Video | Recording
Ch 7, TDD is dead, Unit Tests Are Waste, Response2. Scope, Static, Linked Lists, Arrays
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides
Lab 3: Debugging II
(due 2/2)
Wed
Jan 31
7. Lists IV: Arrays and Lists
Video | Recording
Ch 8Project 1A: LinkedListDeque61B
(due 2/5)
Fri
Feb 02
8. Inheritance I: Interface and Implementation Inheritance
Video | Recording
Ch 9
4 Mon
Feb 05
9. Inheritance II: Extends, Casting, Higher Order Functions
Video | Recording
Ch 103. Inheritance
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides

Project 1 Workday


Wed
Feb 07
10. Inheritance III: Subtype Polymorphism, Comparators, Comparable
Video | Recording
Ch 11Project 1B: ArrayDeque61B
(due 2/12)
Fri
Feb 09
11. Inheritance IV: Iterators, Object Methods
Video | Recording
Ch 12
5 Mon
Feb 12
12. Asymptotics I
Video | Recording
Ch 134. Comparators, Iterators
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides
Lab 4: Git
(due 2/20)
Wed
Feb 14
13. Ask Anything: Midterm 1
Recording
Project 1C: Deque61B Enhancements
(due 2/20)
Thu
Feb 15

Midterm 1 (7-9PM)


Fri
Feb 16
14. Disjoint Sets
Video | Recording
Ch 14Homework 2
(due 2/26)
6 Mon
Feb 19

No Lecture (Academic Holiday)


5. Asymptotics, Disjoint Sets
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides
Lab 5: Disjoint Sets
(due 2/26)
Wed
Feb 21
15. Asymptotics II
Video | Recording
Ch 15Project 2A: NGrams
(due 3/6)
Fri
Feb 23
16. ADTs, Sets, Maps, BSTs
Video | Recording
Ch 16
7 Mon
Feb 26
17. B-Trees (2-3, 2-3-4 Trees)
Video | Recording
Ch 176. ADTs, Asymptotics II, BSTs
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides
Lab 6: BSTMap
(due 3/01)
Wed
Feb 28
18. Red Black Trees
Video | Recording
Ch 18
Fri
Mar 01
19. Hashing
Video | Recording
Ch 19
8 Mon
Mar 04
20. Hashing II
Video | Recording
Ch 207. B-Trees, LLRBs, Hashing
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides
Lab 7: LLRBs
(due 3/08)
Video
Wed
Mar 06
21. Heaps and Priority Queues
Video | Recording
Ch 21
Fri
Mar 08
22. Tree and Graph Traversals
Video | Recording
Ch 22Project 2B/2C Checkpoint and Design Doc
(due 3/15)
9 Mon
Mar 11
23. Graph Traversals and Implementations
Video | Recording
Ch 238. Graphs, Heaps
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides
Lab 8: HashMaps
(due 3/15)
Video
Homework 3
(due 3/18)
Wed
Mar 13
24. Shortest Paths
Video | Recording
Ch 24
Fri
Mar 15
25. Minimum Spanning Trees
Video | Recording
Ch 25
10 Mon
Mar 18
26. Directed Acyclic Graphs
Video | Recording
Ch 289. Shortest Paths, MSTs
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides

Project 2 Workday


Project 2B: Wordnet
Project 2C: Enhancements
(due 4/1)
Wed
Mar 20
27. Software Engineering I
Video | Recording
Ch 27
Thu
Mar 21

Midterm 2 (7-9PM)


Fri
Mar 22
28. Prefix Operations and Tries
Video | Recording
Ch 26
11Mon
Mar 25

No Lecture (Spring Break)


No Discussion

No Lab


Wed
Mar 27
Fri
Mar 29
12 Mon
Apr 01
29. Sorting I: Selection Sort, Heapsort
Video | Recording
Ch 2910. Graphs II, Tries
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides
Lab 9: Getting Started on Project 3
(due 4/05)
Wed
Apr 03
30. Sorting II: Mergesort and Insertion Sort
Video | Recording
Ch 30Project 3A: World Generation
(due 4/15)
Fri
Apr 05
31. Software Engineering II
Recording
Ch 31
13 Mon
Apr 08
32. Sorting III: Quicksort
Video | Recording
Ch 3211. Sorting
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides
Lab 10: Tetris
(due 4/12)
Wed
Apr 10
33. Sorting IV: Sorting and Algorithmic Bounds
Video | Recording
Ch 34
Fri
Apr 12
34. Software Engineering III
Recording
Ch 33
14 Mon
Apr 15
35. Sorting V: More Quicksort, Radix Sorts
Video | Recording
Ch 3512. More Sorting
Regular / Solutions / Video / Slides
Exam Prep / Solutions / Video / Slides

Project 3 Workday


Wed
Apr 17
36. Sorting VI: Radix vs. Comparison Sorting
Video | Recording
Ch 36Project 3B/C: Interactivity + Ambition
(due 4/22)
Fri
Apr 19
37. Software Engineering IV
Recording
Ch 37
15Mon
Apr 22
38. Compression
Video | Recording
Ch 3813. Goodbye, Fun

Project 3 Checkoffs


Wed
Apr 24
39. Complexity and P=NP?
Video | Recording
Ch 39Homework 4
(due 4/28, extendable to 5/3)
Fri
Apr 26
40. Summary, Fun
Recording
16Mon
Apr 29

No Lecture (RRR Week)


No Discussion

No Lab


Wed
May 01
Fri
May 03
17Tue
May 07

Final Exam (May 7th, 8-11AM)