COP-3530, Data Structures Lectures
- August 28: Administrivia and Java Review
- Read Chapters 1 - 4, Sections 7.1 to 7.3, and the Appendix, most of which is review material.
- Function Objects (Section 4.7)
- August 30: Java Review Continued
- Dynamically expanding arrays and ArrayList (Section 2.4)
- Iterators and Inner Class (Section 6.2, 15.1, 15.2)
- September 4: The Collections API
- September 6: Collections API continued
- Discussion of Assignment #2
- Comparators and treesets
- September 13, 18, 20, 25: Algorithm Analysis and Start of Sorting
- Read Chapter 5, Section 7.5 (up to 7.5.2), and Section 8.5.
- Big-Oh
- Maximum subsequence sum examples
- StringBuffers (see TestString.java)
- Logarithms
- Binary search
- Mergesort
- September 27: Recursion
- October 2: Stacks, Queues, Unweighted shortest paths
- Read Chapter 16
- Scan the start of Chapter 14
- October 4: Linked Lists
- October 9 and 11: Binary search trees
- Insertion, find, deletion
- Discussion of Assignment #4
- October 16: Midterm
- October 18: No class
- October 23: AVL Trees
- October 25, 30, November 1: Dijkstra's Algorithm and Priority Queues
- Read Section 14.3
- Read Chapter 21
- Applet demo #1 (Dijkstra's algorithm)
- November 6, 8: Sorting
- Read Chapter 8
- Heapsort
- Lower bounds for sorting
- Quicksort
- November 13 and 15: Disjoint Sets
- Discussion of Assignment #6
- Read Chapter 24, but stop before Section 24.6
- November 22 and 27: Hash tables
- Read Chapter 20
- Discussion of Java 1.2 Collections API:
HashSet, HashMap, equals,
and hashcode
- November 29: Evals and B-trees
- December 4: Review
-
Final Examination:
Thursday December 13, 3:30 - 6:15 PM.