Course administrivia, an introduction to object oriented programming
Algorithm analysis & Asymptotic Notations
Intro to ADTs, Java Generics, Linked lists
Review of iterators, stacks, queues
Insertion Sort, Merge Sort, Solving Recurrences
Heaps and Heap Sort
Midterm
Trees: BST, AVL trees, AVL Sort, Counting Sort, Radix Sort, Lower bound for sorting
Implementing a Dictionary, Maps, and Intro to Hashing
Hashing & Collisions
Graphs & traversal (BFS, DFS)
Graph algorithms(Shortest Path, MST)
Disjoint sets & Network connectivity
Review