Dates | Monday | Wednesday | Readings |
---|---|---|---|
Mar 29, 31 |
What is good design? Typed variables Casting |
for vs. while Java primitives OO design Memory diagrams |
Appendix A |
Apr 5, 7 | Short-circuiting 3-steps in object use Classes vs. objects the new command instances, messages, and constructors Class re-use Reading and writing Javadocs |
Class design: prototypes, signatures, modifiers, return types, constructors, and instance variables Getters and Setters Local vs. parameter vs. instance vars Top-down design |
Chapter 1 |
Apr 12, 14 | Top-down design Debugging Constants switch stmt |
this object Type expressions pass-by-reference vs. pass-by-value |
Chapter 2 |
Apr 19, 21 | Inheritance, polymorphism abstract classes |
Big-O notation | Extra reading on inheritance Appendix B |
Apr 26, 28 | Linked lists | Linked lists Information hiding Data abstraction Midterm review |
Chapter 3 |
May 3, 5 | MIDTERM |
Priority Queues interfaces |
Chapter 5 |
May 10, 12 | Stacks, Queues | recursion | Chapters 4 and 6 |
May 17, 19 | Trees: properties, binary trees |
binary search trees: insertion |
Chapter 8: sections 8.1-8.7 and Chapter 4 |
May 24, 26 | binary search trees: deletion |
2-3 trees heaps |
Chapter 8: sections 8.7 and 8.9 |
May 31, Jun 2 | heaps | hash tables Review for final |
Chapter 8: section 8.5 Chapter 9: sections 9.1-9.5 |
Exam Week | Final Exam: Monday, June 7, 2:30-4:30, Olin 106 |