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 survey | Mon 09/25 |
14. Disjoint Sets [video] [slides] [recording] | Asymptotics, Disjoint Sets
[solution] [video] [slides] Asymptotics, Disjoint Sets (Exam-Level) [solution] [video] [slides] |
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] [recording] |
Homework 2 (due 10/4)
|
||||||
Fri 09/29 |
16. ADTs, Sets, Maps, BSTs [video] [slides] [recording] |
Project 2A (due 10/11)
|
||||||
7 survey | Mon 10/02 |
17. B-Trees (2-3, 2-3-4 Trees) [video] [slides] [recording] | ADTs, Asymptotics II, BSTs
[solution] [video] [slides] ADTs, Asymptotics II, BSTs (Exam-Level) [solution] [video] [slides] |
BSTMap (due 10/06)
[slides] | [Homework 2 due 10/4] | |||
Wed 10/04 |
18. Red Black Trees [video] [slides] [recording] |
Project 2A (due 10/11)
|
||||||
Fri 10/06 |
19. Hashing [video] [slides] [recording] |
|||||||
8 survey | Mon 10/09 |
20. Hashing II [video] [slides] [recording] | B-Trees, LLRBs, Hashing
[solution] [video] [slides] B-Trees, LLRBs, Hashing (Exam-Level) [solution] [video] [slides] |
LLRBs (due 10/13)
[video] [slides] |
Homework 3 (due 10/16)
|
|||
Wed 10/11 |
21. Heaps and PQs [video] [slides] [recording] | [Project 2A due 10/11] |
Project 2B (due 10/30)
|
|||||
Fri 10/13 |
22. Tree and Graph Traversals [video] [slides] [recording] |
Project 2B (due 10/30)
|
||||||
9 survey | Mon 10/16 |
23. Graph Traversals and Implementations [video] [slides] [recording] | Graphs, Heaps
[solution] [video] [slides] Graphs, Heaps (Exam-Level) [solution] [video] [slides] |
Project 2 Workday
| [Homework 3 due 10/16] | |||
Wed 10/18 |
24. Shortest Paths [video] [slides] [recording] | Midterm 2 (Thursday 10/19) 7-9 PM |
||||||
Fri 10/20 |
25. Minimum Spanning Trees [video] [slides] [recording] |
|||||||
10 survey | Mon 10/23 |
26. Prefix Operations and Tries [video] [slides] [recording] | Shortest Paths, MSTs
[solution] [video] [slides] Shortest Paths, MSTs (Exam-Level) [solution] [video] [slides] |
Hashmaps (due 10/27)
[video] [slides] |
Project 2B due 10/30
|
|||
Wed 10/25 |
27. Software Engineering I [slides] [recording] |
|||||||
Fri 10/27 |
28. Directed Acyclic Graphs [video] [slides] [recording] | [Project 2B due 10/30] | ||||||
11 survey | Mon 10/30 |
29. Sorting 1: Selection Sort, Heapsort, Mergesort [video] [slides] [recording] | Graphs II, Tries
[solution] [video] [slides] Graphs II, Tries (Exam-Level) [solution] [video] [slides] |
Getting Started on Project 3 (due 11/3)
[video] [slides] |
Project 3A (due 11/13) and 3B & 3C (due 11/27)
|
|||
Wed 11/01 |
30. Sorting 2: Insertion Sort and Quicksort [video] [slides] [recording] |
|||||||
Fri 11/03 |
31. Software Engineering II [video] [slides] [recording] |
|||||||
12 survey | Mon 11/06 |
32. Sorting 3: More Quicksort, Quick Select [video] [slides] [recording] | Sorting
[solution] [video] [slides] Sorting (Exam-Level) [solution] [video] [slides] |
Tetris (due 11/15)
[video] [slides] |
Project 3A (due 11/13) and 3B & 3C (due 11/27)
|
|||
Wed 11/08 |
33. Software Engineering III [video] [slides] [recording] |
|||||||
No Classes | ||||||||
13 survey | Mon 11/13 |
34. Sorting 4: Sorting and Algorithmic Bounds [video] [slides] [recording] | More Sorting
[solution] [video] [slides] More Sorting (Exam-Level) [solution] [video] [slides] |
Project 3 Workday
| [Project 3A due 11/13] | |||
Wed 11/15 |
35. Sorting 5: Radix Sorts [video] [slides] [recording] |
Project 3B & 3C (due 11/27)
|
||||||
Fri 11/17 |
36. Sorting 6: Radix vs. Comparison Sorting [video] [slides] [recording] |
|||||||
14 | Mon 11/20 |
37. Software Engineering IV [slides] [recording] | No Discussion | No Lab
|
Project 3B & 3C (due 11/27)
|
|||
No Classes (Thanksgiving) | ||||||||
No Classes (Thanksgiving) | ||||||||
15 survey | Mon 11/27 |
38. Compression [video] [slides] [guide] [recording] | Goodbye, Fun | Project 3 Demos
| [Project 3B & 3C 11/27] | |||
Wed 11/29 |
39. Complexity and P=NP? [video] [slides] [recording] |
Homework 4 (due 12/8)
|
||||||
Fri 12/01 | None |
40. Summary, Fun [slides] [recording] |
||||||
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.