Calendar
Week | Date | Reading | Lecture | Discussion / Review | Lab | Assignments/Exams | ||
---|---|---|---|---|---|---|---|---|
1 survey | No Classes | No discussion week 1. | IntelliJ, Git (due 8/28)
[slides] | |||||
Wed 08/23 |
1. Intro [video] [slides] [recording] |
HW0: A Java Crash Course (due 8/25)
|
||||||
Fri 08/25 |
2. Defining and Using Classes [video] [slides] [recording] |
Project 0: 2048 (due 9/1)
| [HW0 due 8/25] | |||||
2 survey | Mon 08/28 |
3. Lists 1: References, Recursion, and Lists [video] [slides] [recording] | Introduction To Java
[solution] [video] [slides] Introduction To Java (Exam-Level) [solution] [video] [slides] |
Debugging (due 9/1)
[slides] |
HW1: Being a Good Classmate (due 9/1)
|
|||
Wed 08/30 |
4. Lists 2: SLLists [video] [slides] [recording] |
Project 0 (due 9/1)
|
||||||
Fri 09/01 |
5. Lists 3: DLLists and Arrays [video] [slides] [recording] | [HW1, Project 0 due 9/1] | ||||||
3 survey | No Classes | Scope, Static, Linked Lists, Arrays
[solution] [video] [slides] Arrays, Linked Lists (Exam-Level) [solution] [video] [slides] |
Debugging Part 2 (due 09/11)
[slides] |
Project 1A: Deques (due 9/11)
|
||||
Wed 09/06 | Optional: TDD is dead, Unit Tests Are Waste, Response |
6. Testing [video] [Josh slides] [Justin slides] [recording] |
||||||
Fri 09/08 |
7. Lists 4: Arrays and Lists [video] [slides] [recording] |
Project 1A (due 9/11)
|
Project 1B (due 9/18)
|
|||||
4 survey | Mon 09/11 |
8. Inheritance 1: Interface and Implementation Inheritance [video] [slides] [recording] | Inheritance
[solution] [video] [slides] Inheritance (Exam-Level) [solution] [video] [slides] |
Project 1 Workday
| [Project 1A due 9/11] | |||
Wed 09/13 |
9. Inheritance 2: Extends, Casting, Higher Order Functions [video] [slides] [recording] |
Project 1B (due 9/18)
|
||||||
Fri 09/15 |
10. Inheritance 3: Subtype Polymorphism, Comparators, Comparable [video] [slides] [recording] |
Project 1C (due 9/25)
|
||||||
5 survey | Mon 09/18 |
11. Inheritance 4: Iterators, Object Methods [video] [slides] [recording] | Comparators, Iterators
[solution] [video] [slides] Comparators, Iterators (Exam-Level) [solution] [video] [slides] |
Timing (Optional)
[videos] |
Project 1C (due 9/25)
|
|||
Wed 09/20 |
12. Midterm 1 Q&A [slides] [recording] | Midterm 1 (Thursday 9/21) 7-9 PM |
||||||
Fri 09/22 |
13. Asymptotics I [video] [slides] [recording] |
|||||||
6 | Mon 09/25 |
14. Disjoint Sets [video] [slides] | Asymptotics, Disjoint Sets Asymptotics, Disjoint Sets (Exam-Level) |
Disjoint Sets (due 09/29)
[videos][slides] | Homework 2 (due 10/4) | [Project 1C due 9/25] | ||
Wed 09/27 |
15. Asymptotics II [video] [slides] | Homework 2 (due 10/2) | ||||||
Fri 09/29 |
16. ADTs, Sets, Maps, BSTs [video] [slides] | Project 2A (due 10/11) | ||||||
7 | Mon 10/02 |
17. B-Trees (2-3, 2-3-4 Trees) [video] [slides] | ADTs, Asymptotics II, BSTs ADTs, Asymptotics II, BSTs (Exam-Level) |
BSTMap (due 10/06)
[slides] | [Homework 2 due 10/2] | |||
Wed 10/04 |
18. Red Black Trees [video] [slides] | Project 2A (due 10/11) | ||||||
Fri 10/06 |
19. Hashing [video] [slides] |
|||||||
8 | Mon 10/09 |
20. Hashing II [video] [slides] | B-Trees, LLRBs, Hashing B-Trees, LLRBs, Hashing (Exam-Level) |
HashMap (due 10/13)
[video][slides] | Homework 3 (due 10/16) | |||
Wed 10/11 |
21. Heaps and PQs [video] [slides] | [Project 2A due 10/11] | Project 2B (due 10/27) | |||||
Fri 10/13 |
22. Tree and Graph Traversals [video] [slides] | Project 2B (due 10/27) | ||||||
9 | Mon 10/16 |
23. Graph Traversals and Implementations [video] [slides] | Graphs, Heaps Graphs, Heaps (Exam-Level) |
LLRBs (due 10/20)
| [Homework 3 due 10/16] | |||
Wed 10/18 |
24. Shortest Paths [old video] [slides] | Midterm 2 (Thursday 10/19) 7-9 PM |
||||||
Fri 10/20 |
25. Minimum Spanning Trees [video] [slides] |
|||||||
10 | Mon 10/23 |
26. Prefix Operations and Tries [video] [slides] | Shortest Paths, MSTs Shortest Paths, MSTs (Exam-Level) |
Project 2 Workday
| Project 2B (due TBD) | |||
Wed 10/25 |
27. Software Engineering I |
|||||||
Fri 10/27 |
28. Directed Acyclic Graphs [video] [slides] | Project 3 Phase 1 (due 11/13) and Phase 2 (due 11/27) | ||||||
11 | Mon 10/30 |
29. Basic Sorts [video] [slides] | Graphs II, Tries Graphs II, Tries (Exam-Level) |
Getting Started on Project 3 (due 11/3)
| Project 3 Phase 1 (due 11/13) and Phase 2 (due 11/27) | |||
Wed 11/01 |
30. Quick Sort [video] [slides] |
|||||||
Fri 11/03 |
31. Software Engineering II [video] [slides] |
|||||||
12 | Mon 11/06 |
32. More Quicksort, Quick Select, Stability [video] [slides] | Sorting Sorting (Exam-Level) |
Interactivity in Project 3 (due 11/13)
[slides] | Project 3 Phase 1 (due 11/13) and Phase 2 (due 11/27) | |||
Wed 11/08 |
33. Software Engineering III [video] [slides] |
|||||||
No Classes | ||||||||
13 | Mon 11/13 |
34. Sorting and Algorithmic Bounds [video] [slides] | More Sorting More Sorting (Exam-Level) |
Project 3 Workday
| [Project 3 Phase 1 due 11/17] | |||
Wed 11/15 |
35. Radix Sorts [video] [slides] | Project 3 Phase 2 (due 11/27) | ||||||
Fri 11/17 |
36. Sorting and Data Structures Conclusion [video] [slides] |
|||||||
14 | Fri 11/24 |
37. Software Engineering IV Designing 61B [video] [slides] | No Discussion | No Lab
| Project 3 Phase 2 (due 11/27) | |||
No Classes (Thanksgiving) | ||||||||
No Classes (Thanksgiving) | ||||||||
15 | Mon 11/27 |
38. Compression [video] [slides] [guide] | Goodbye, Fun | Project 3 Demos
| [Project 3 Phase 2 due 11/27] | |||
Wed 11/29 |
39. Compression, Complexity, and P=NP? [video] [slides] | Homework 4 (due 12/8) | ||||||
Fri 12/01 | None |
40. Summary, Fun [slides] |
||||||
16 | RRR Week | No Discussion | No Lab
| [HW4 due 12/8] | ||||
RRR Week | ||||||||
RRR Week | ||||||||
Finals Week (Dec 11-15) Final exam: Thursday (12/14), 3-6 PM |
Lab / Discussion Schedule
Each discussion section is now a bridge, practice, or exam level discussion section. You can find more information about each section in the Week 2 Announcements on Ed.