You should consult this page regularly to see the most current version of the schedule of topics and readings. You should complete all assigned readings and attempt to work all the problems at the end of each section as you are studying. They will be good practice for the regular quizzes during the first ten minutes on Monday lectures, and may also appear on the midterms or final exam.
Week | Day | Date | Topic |
---|---|---|---|
1 | Wed | Jan 17 | Introduction and Java Basics [slides], [slides with notes], [keynote], [worksheet], [code] |
2 | Mon | Jan 22 | Control Flow and Arrays [slides], [slides with notes], [keynote], [worksheet], [code] |
Wed | Jan 24 | Classes and Objects [slides], [slides with notes], [keynote], [worksheet], [code] | |
3 | Mon | Jan 29 | Memory Management, Exceptions, and I/O [slides], [slides with notes], [keynote], [worksheet], [code] |
Wed | Jan 31 | Inheritance [slides], [slides with notes], [keynote], [worksheet], [code] | |
4 | Mon | Feb 5 | Interfaces and Generics [slides], [slides with notes], [keynote], [worksheet], [code] |
Wed | Feb 7 | ArrayLists [slides], [slides with notes], [keynote], [code] | |
5 | Mon | Feb 12 | Analysis of Algorithms [slides], [slides with notes], [keynote], [code] |
Wed | Feb 14 | Singly Linked Lists [slides], [slides with notes], [keynote], [code] | |
6 | Mon | Feb 19 | Doubly Linked Lists [slides], [slides with notes], [keynote], [code] |
Wed | Feb 21 | Stacks and Queues [slides], [slides with notes], [keynote], [code] | |
7 | Mon | Feb 26 | Midterm I |
Wed | Feb 28 | Iterators, Comparators, and Selection Sort [slides], [slides with notes], [keynote], [code] | |
8 | Mon | Mar 4 | Insertion Sort [slides], [slides with notes], [keynote], [code] |
Wed | Mar 6 | Mergesort [slides], [slides with notes], [keynote], [code] | |
9 | Mon | Mar 11 | Spring break |
Wed | Mar 13 | Spring break | |
10 | Mon | Mar 18 | Quicksort [slides], [slides with notes], [keynote], [code] |
Wed | Mar 20 | Binary Trees, Binary Search, Heaps, and Priority Queues [slides], [slides with notes], [keynote] | |
11 | Mon | Mar 25 | Heapsort [slides], [slides with notes], [keynote] |
Wed | Mar 27 | Dictionaries and Binary Search Trees [slides], [slides with notes], [keynote] | |
12 | Mon | Apr 1 | 2-3 Search Trees [slides], [slides with notes], [keynote] | Wed | Apr 3 | Left-leaning Red-Black BSTs [slides], [slides with notes], [keynote] |
13 | Mon | Apr 8 | Midterm II |
Wed | Apr 10 | Hash Tables [slides], [slides with notes], [keynote] | |
14 | Mon | Apr 15 | Hash Tables [slides], [slides with notes], [keynote] |
Wed | Apr 17 | Graphs [slides], [slides with notes], [keynote] | |
15 | Mon | Apr 22 | Graphs [slides], [slides with notes], [keynote] |
Wed | Apr 24 | Shortest Paths [slides], [slides with notes], [keynote] | |
16 | Mon | Apr 29 | Minimum Spanning Trees [slides], [slides with notes], [keynote] |
Wed | May 1 | Review [slides], [keynote] | |
17 | Wed | May 8 | Final Exam |