Week 1
- MLK Day -- No afternoon classes
- Administrivia
- Review of Java
Week 2
- Array-based collections, List and ArrayList
- Java 5 Update
- Quadratic sorting techniques
Week 3
- Bucket Sort, Hashing
- Review/Slack
- Exam #1
Week 4
- Linked List, intro
- Linked List, implementation
- Linked List, implementation
Week 5
- Doubly Linked List, implementation
- Queues and applications thereof
- Stacks, and applications thereof
Week 6
- Recursion, and Examples thereof
- Recursive Problem Solving
- Quicksort/Merge sort
Week 7
- Trees and Heap sort
- Expression trees and traversals (pre, post, in, dfs, bfs)
- Review/Slack
Week 8
- Exam #2
- Review Exam
- No class -- mid semester break
Week 9
Week 10
- BSTs, intro
- BSTs, implementation: insert and find
- Review of Java's Collection classes
Week 11
- Introduction to Graphs
- Graph representation
- Topological sort
Week 12
- Shortest Path
- Spanning trees and Minimum spanning tree
- Cycle detection, Union-Find
Week 13
- Graphical Applications/Applets
- Graphical Applications/Applets
- No class -- Carnival
Week 14
- Threaded Programming
- Network Programming
- OO Software Development
Week 15
- Algorithm Analysis: Retrospective
- Review/Slack
- Exam #3
|