1
Survey | Mon Jun 23 | 0. Introduction and Logistics Course Policies
1. Introduction to Java, Git, and Setup Ch 1
| Lec 0-1 |
Lab 1: Introduction to Java, Git, and Setup
(due Tue Jun 24)
| Homework 0
(due Tue Jun 24) |
Project 0: 2048
(due Sun Jun 29) |
Tue Jun 24 |
| |
Lab 2: Conditionals, Loops, and Arrays
(due Wed Jun 25)
|
Wed Jun 25 | 2. Instantiation, References, Primitives, Objects Pre-Video / Ch 2,
Ch 3,
Ch 6
3. Testing Ch 7
| Lec 2-3 |
Lab 3: Primitives and Objects
(due Thu Jun 26)
| Homework 1
(due Tue Jul 01) |
Thu Jun 26 |
| |
Lab 4: Debugging & Test-Driven Development
(due Fri Jun 27)
|
Fri Jun 27 |
| |
Theoretical #1: Introduction to Java Programming Worksheet / Solutions / Slides
|
2
Survey | Mon Jun 30 | 4. Linked Lists Pre-Video / Ch 3,
Ch 4,
Ch 5
5. Generics, ArrayLists Pre-Video / Ch 8
| Lec 4-5 |
Lab 5: Intro to Linked Lists
(due Tue Jul 01)
| Project 1A: LinkedListDeque
(due Thu Jul 03) |
Tue Jul 01 |
| |
Lab 6: Linked List Enhancements
(due Wed Jul 02)
|
Wed Jul 02 | 6. Inheritance Pre-Video / Ch 9,
Ch 10,
Ch 16.1
7. Object Methods, Comparison, Iteration Pre-Video / Ch 11,
Ch 12
| Lec 6-7 |
Lab 7: Abstract Data Types & Inheritance
(due Thu Jul 03)
| Homework 2
(due Tue Jul 08) |
Thu Jul 03 |
| |
Lab 8: Comparison, Exceptions, and Iteration
(due Sat Jul 05)
|
Fri Jul 04 |
| |
No Lab (Holiday)
| Project 1B: ArrayDeque
(due Wed Jul 09) |
3
Survey | Mon Jul 07 | 8. Abstract Data Types Pre-Video / Ch 16.1
9. Asymptotics Pre-Video / Ch 13
| Lec 8-9 |
Theoretical #2: Object Oriented Programming and Abstract Data Types Worksheet / Solutions / Slides
|
Tue Jul 08 |
| |
Lab 9: Runtime Analysis
(due Wed Jul 09)
|
Wed Jul 09 | 10. More Asymptotics Ch 15
11. Trees Pre-Video / Ch 16.2-16.7
| Lec 10-11 |
Lab 10: Trees and Traversals
(due Thu Jul 10)
| Homework 3
(due Tue Jul 15) |
Thu Jul 10 |
| |
Lab 11: Binary Search Trees
(due Fri Jul 11)
| Project 2A: NGrams
(due Wed Jul 16) |
Fri Jul 11 |
| |
Theoretical #3: Asymptotics and Trees Worksheet / Solutions / Slides
|
4
Survey | Mon Jul 14 | 12. Tree Traversals Ch 22.1,
Ch 22.2
13. B-Trees Pre-Video / Ch 17
| Lec 12 (Tree Traversals Only) |
Theoretical #4: Binary Search Trees Worksheet / Solutions / Slides
|
Tue Jul 15 |
| |
Lab 12: Balanced Search Trees
(due Sun Jul 20)
|
Wed Jul 16 | 14. Red-Black Trees Pre-Video / Ch 18
15. Exam Advice / Review | Lec 14-15 |
Lab 13: Past Midterm Walkthroughs
| Homework 4
(due Tue Jul 22) |
Thu Jul 17 |
| |
Office Hours
| Project 2B: Wordnet
(due Sun Jul 27) |
Fri Jul 18 | Midterm (7 - 9pm)
| |
No Lab
|
5
Survey | Mon Jul 21 | 16. Hashing Ch 19,
Ch 20
17. Heaps and Priority Queues Ch 21
| Lec 16-17 |
Lab 14: Hashing
(due Tue Jul 22)
|
Tue Jul 22 |
| |
Lab 15: Heaps and Priority Queues
(due Wed Jul 23)
|
Wed Jul 23 | 18. Disjoint Sets Pre-Video / Ch 14
19. Introduction to Graphs Pre-Video / Ch 22.3-22.4,
Ch 23
| Lec 18-19 |
Lab 16: Disjoint Sets
(due Thu Jul 24)
| Homework 5
(due Tue Jul 29) |
Thu Jul 24 |
| |
Project 2 Office Hours
|
Fri Jul 25 |
| |
Theoretical #5: Hashing, Heaps, and Union Find Worksheet / Solutions / Slides
|
6 | Mon Jul 28 | 20. Graph Traversals, DAGs, Topological Sorts Ch 23,
Ch 28
21. BYOW Introduction Project 3 Spec
| Lec 20-21 |
Lab 17: Graphs
(due Tue Jul 29)
| Project 3A: World Generation
(due Mon Aug 04) |
Tue Jul 29 |
| |
Lab 18: Build Your Own World Introduction
(due Wed Jul 30)
|
Wed Jul 30 | 22. Shortest Path Trees Pre-Video / Ch 24
23. Minimum Spanning Trees Pre-Video / Ch 25
| Lec 22-23 |
Lab 19: Shortest Path Trees
(due Thu Jul 31)
| Homework 6
(due Tue Aug 05) |
Thu Jul 31 |
| |
Lab 20: Minimum Spanning Trees
(due Fri Aug 01)
|
Fri Aug 01 |
| |
Theoretical #6: Graphs Worksheet / Solutions / Slides
|
7 | Mon Aug 04 | 24. Comparison Sorts Pre-Video / Ch 29,
Ch 34
25. Quicksort Pre-Video / Ch 30,
Ch 32
| Lec 24-25 |
Lab 21: Comparison Sorts
(due Tue Aug 05)
|
Tue Aug 05 |
| |
Lab 22: Counting Sorts
(due Thu Aug 07)
| Project 3B: Interactivity
(due Sun Aug 10) |
Wed Aug 06 | 26. Radix Sorts Pre-Video / Ch 35,
Ch 36
27. Sorting Bounds Ch 34
| Lec 26-27 |
Theoretical #7: Sorting Worksheet / Solutions / Slides
| Homework 7
(due Mon Aug 11) |
Thu Aug 07 |
| |
BYOW OH & Checkoffs
|
Fri Aug 08 |
| |
BYOW OH & Checkoffs
|
8 | Mon Aug 11 | Exam Review / Q&A
| Review + Q&A + Fun |
BYOW OH & Checkoffs
| |
Tue Aug 12 | Final Exam (Tues, Aug 12, 3-6pm)
| |
No Lab
|
Wed Aug 13 |
| |
No Lab
| |
Thu Aug 14 |
| |
No Lab
|
Fri Aug 15 |
| |
No Lab
|