I have been a grader and a lab helper (TA) for this class, one semester each.
Objects and reference variables
Introduction to Object Oriented Programming
Inheritance and Generics
Java Collections
Data Structures
- Array
- Lists
- Iterators
- Queues
- Stacks
- Linked Lists
- Trees
+ General
+ BST
- Balanced Trees
+ AVL
+ Red-Black
+ 2-3-4 Trees
- Maps
- Sets
- Priority Queues
+ Heaps
+ Array based heaps
- Tries
- Hashtables
- Graphs
+ Edge List
+ Adjacency Matrix
+ Adjacency List
Algorithm Analysis
- Big-Oh Notation
- Algorithm Growth
- Classes of algorithms
Recursion
- Divide and Conquer
- Recursive backtracking
- Dynamic programming
Graphs Algorithms
- Unweighted BFS
- Positive Weighted Paths (Dijkstra's Alg.)
- Negative Weighted Paths (Bellman-Ford Alg.)
- Topological Sorting
Sorting Algorithms
- Insertion
- Selection
- Bubble
- Shell
- Quick
- Quickselect
- Heapsort
- Lower bounds of sorting
Search Algorithms
- Linear & Binary Search
- Lower bound of search
Note: certain topics was omitted due to time constraint.