COP-3530, Data Structures Lectures
- Jan 11, 13, 18, (20 or 25): Administrivia, Java Review, and Java 1.5
- Read Chapters 1 - 4, Sections 7.1 to 7.3, and the Appendix, most of which is review material.
- Packages, interfaces, iterators
- Dynamically expanding arrays and ArrayList (Section 2.4)
- StringBuffers (see TestString.java)
- Nested, local, and anonymous classes (Section 4.7)
- Inner Classes (Section 6.2, 15.1, 15.2)
- SAMPLE CODE, WHAT I TYPED ON JAN 13: Container.java and
ContainerTest.java
- SAMPLE CODE, WHAT I TYPED ON JAN 18: Jan18.java.
Code illustrates basics of inheritance, uses of super, covariance of
arrays, use of Comparable and Comparator in Java 5,
generic methods, and autoboxing. Code is incomplete because generic types are
not covariant. More to come in the next lecture.
- Function Objects (Section 4.7)
- Java 1.5
- Jan 27 and Feb 1: The Collections API
- Read Chapter 6
- The Collections API
- Linked list review
- Sets
- Maps
- Iterators
- Assignment #2 discussion
- Feb 3: Algorithm Analysis
- Read Chapter 5
- Big-Oh
- Maximum subsequence sum examples
- Feb 8, 10, 15: More Algorithm Analysis
- Single-operation costs
- Singly, and doubly linked lists
- Logarithms
- Binary search
- Recursion review
- Divide and conquer (Section 7.5)
- Mergesort (Section 8.5)
- Discussion of Assignment #3
- Code from Feb 15 lecture.
- Feb 17 and 22: Linked Lists
- Implementation of java.util.LinkedList
- Read Chapter 17
- Feb 24 and Mar 1: Binary search trees
- Insertion, find, deletion
- size, height, toString
- Implementation of contains and add
- Mar 3: AVL Trees
- Mar 8: Midterm
- Mar 10 and 15: Shortest Paths
- Read Section 14.3
- Discussion of Assignment #5
- Applet demo #1 (Dijkstra's algorithm)
- Mar 17: Priority Queues
- Mar 22 and 24: No class (Spring Break)
- Mar 29, 31, and Apr 5: Sorting
- Read Chapter 8
- Heapsort
- Quicksort
- Lower bounds for sorting
- Apr 7, 12, 14: Hash Tables
- Chapter 20 and 6.7.2.
- Discussion of Java 1.2 Collections API:
HashSet, HashMap, equals,
and hashcode
- Evaluations
-
Apr 26: Final Exam
Finals Week.