1 | Wed Jan 17 | 1. Intro Video | Recording | Ch 1 | No Discussion | Lab 1: Setup (due 1/19) | Homework 0A (due 1/19) | |
Fri Jan 19 | 2. Defining and Using Classes Video | Recording | Ch 2 | Homework 0B (due 1/22) | Project 0: 2048 (due 1/29) |
2 | Mon Jan 22 | 3. Lists I: References, Recursion, and Lists Video | Recording | Ch 3 | 1. 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 4 | Homework 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, Response | 2. 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 8 | Project 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 10 | 3. 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 11 | Project 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 13 | 4. 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 14 | Homework 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 15 | Project 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 17 | 6. 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 20 | 7. 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 22 | Project 2B/2C Checkpoint and Design Doc (due 3/15) |
9 | Mon Mar 11 | 23. Graph Traversals and Implementations Video | Recording | Ch 23 | 8. 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 28 | 9. 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 |
11 | Mon 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 29 | 10. 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 30 | Project 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 32 | 11. 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 35 | 12. 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 36 | Project 3B/C: Interactivity + Ambition (due 4/22) |
Fri Apr 19 | 37. Software Engineering IV Recording | Ch 37 |
15 | Mon Apr 22 | 38. Compression Video | Recording | Ch 38 | 13. Goodbye, Fun | Project 3 Checkoffs
|
Wed Apr 24 | 39. Complexity and P=NP? Video | Recording | Ch 39 | Homework 4 (due 4/28, extendable to 5/3) | |
Fri Apr 26 | 40. Summary, Fun Recording | |
16 | Mon Apr 29 | No Lecture (RRR Week)
| | No Discussion | No Lab
|
Wed May 01 |
Fri May 03 |
17 | Tue May 07 | Final Exam (May 7th, 8-11AM)
| | |
| |