# COP-3530, Data Structures Lectures

- Aug 29: No classes
- Aug 31: Administrivia
- Aug 31, Sept 5, 7: Java Review
- Sept 12, 14: The Collections API
- CODE FROM SEPT 14
- Read Chapter 6
- The Collections API
- Linked list review
- Sets
- Maps
- Iterators
- Assignment #2 discussion

- Sept 19, 21: Algorithm Analysis
- Read Chapter 5
- Big-Oh
- Maximum subsequence sum examples

- Sept 26, 28: Recursion
- Recursion review
- Divide and conquer (Section 7.5)
- More recursion examples Recursion.java
and the fancier version of
`getIsland`
Day9.java

- Oct 3:
- Quiz
- Discussion of Assignment #3

- Oct 5 and 10: More Algorithm Analysis
- Single-operation costs
- Singly, and doubly linked lists
- Day11.java: linked list code from class.
- Logarithms
- Binary search
- Mergesort (Section 8.5)
- Divide-and-conquer analysis

- Oct 17 Review
- Oct 19: Midterm
- Oct 12, 24, 26: Binary search trees
- Day13.java source code from class.
- Insertion, find, deletion
- size, height, toString
- Implementation of contains and add

- Oct 31: AVL Trees
- Nov 2: No class
- Nov 7 and 9: Shortest Paths
- Read Section 14.3
- Discussion of Assignment #5

- Nov 14 and 16: Priority Queues
- Nov 21 and 28: Hash Tables
- Chapter 20 and 6.7.2.
- Discussion of Java 1.2 Collections API:
`HashSet`, `HashMap`, `equals`,
and `hashcode`

- Nov 23: Thanksgiving
- Nov 30 and Dec 5: Sorting
- Read Chapter 8
- Heapsort
- Quicksort
- Lower bounds for sorting

- Dec 7: No class
- Dec 14: Final Exam