Homework assignments are due at 9:30am on the day indicated. Assignments are posted to Moodle. The reading assigned each day relates to the next class's material, and is to be done before the next class meeting. For more details on class policies, please see the syllabus.
Date | Due | Class Topic and Materials | Out | Reading | |
---|---|---|---|---|---|
Java Intro and Bags | |||||
1. M 9/16 | Welcome; Java Basics
Being Bad At Math Python-to-Java guide |
HW0: Hello, Guessing Game (Java Basics) | A.1–49, A.57–62, A.67–92, B.1–29 |
||
2. W 9/18 | HW0 | Java: Arrays and Classes | HW1: Histogram (Classes and Arrays) | B.36–40, D.1–23 | |
3. F 9/20 | HW1 | Java: Generics and Interfaces | HW2: Pets (Interfaces) | C.1–3, 1.1–21 | |
4. M 9/23 | HW2 | Java: Composition; Bag ADT | HW3: Spell Checker (Bag ADT) | 2.1–41 | |
5. W 9/25 | Bag Impl — Array | 3.1–30 | |||
6. F 9/27 | HW3 | Bag Impl — Linked | 4.1–27 | ||
Stacks, Queues, and Lists | |||||
7. M 9/30 | Quiz 1; Efficiency of Algorithms | HW4: Efficiency | 5.1–5 | ||
8. W 10/2 | Efficiency; Stack ADT | 6.1–12, 7.1–27 | |||
9. F 10/4 | HW4 | Stack Impl; Recursion | HW5: Stack I | 8.1–8.9, 9.1–9 | |
10. M 10/7 | Sorting; Sorting Efficiency | HW6: Stack II | 10.1–23 | ||
11. W 10/9 | HW5 | Sorting; Queue & Priority Queue ADTs | 11.1–23, 11.34–41 | ||
12. F 10/11 | Queue Impl | 12.1–14 | |||
13. M 10/14 | HW6 | List ADT | HW7: Sorting | 13.1–15, 14.1–27 | |
14. W 10/16 | Quiz 2; List ADT & Impl | HW8: Queue/PQ I | 16.1–28 | ||
15. F 10/18 | HW7 | Sorted List ADT | HW9: Queue/PQ II | 18.1–25, 19.1–5 | |
XX. M 10/21 | No class | ||||
Dicts and Trees | |||||
16. W 10/23 | HW8 | Searching; Dictionary ADT | 21.1–19 | ||
17. F 10/25 | HW9 | Hashing | HW10: Hash Table | 21.20–25, 22.1–16 | |
18. M 10/28 | Hashing as Dict Impl | 23.1–19 | |||
19. W 10/30 | HW10 | Tree ADT | HW11: Binary Search Tree | 24.1–12 | |
20. F 11/1 | Tree Impl | 25.1–27 | |||
21. M 11/4 | Quiz 3; Binary Search Tree as Dict Impl | 26.1–20 | |||
Heaps, Self-Balancing Trees, and Graphs | |||||
22. W 11/6 | Heaps | HW12: Self-Balancing Search Tree | 27.1–7 | ||
23. F 11/8 | HW11 | AVL Trees | 27.13–30 | ||
24. M 11/11 | 2-3 & 2-4 Trees | 27.31–38 | |||
25. W 11/13 | Red-Black Trees | 28.1–28 | |||
26. F 11/15 | HW12 | Graphs | 29.1–22 | ||
27. M 11/18 | Graph Impl | 29.23–24 | |||
28. W 11/20 | Quiz 4; Graph Algorithms |