Syllabus for COP 3530 - Spring 2006

Concepts of Object Oriented Programming

· Data Abstraction

o Encapsulation - Classes

o Information Hiding - Private Access

· Inheritance

o A superclass variable can be assigned any subclass object

o A superclass object can be cast to any subclass

· Polymorphism

o Overridden methods are decided at run time

Linked List Implementations

· Singly linked lists

· Doubly linked lists

Stacks and Queues

Java Data Structure Interfaces and Classes

· The Generic Collection, List and Set Interfaces

· The Generic Comparable and Comparator Interfaces

· The ArrayList<T> and LinkedList<T> Classes

· The SortedSet<T> Interface

·The HashSet<T> and TreeSet<T> Classes

Recursion

Algorithm Analysis

· Growth Rate of Functions

· Big-Oh notation

· Running Time

· Recurrence Relations

Maps

· The Generic Map Interface

· The Generic Sorted Map Interface

· The HashMap<K,V> Class

· The TreeMap<K,V> Class

Other Data Structures

· Trees and the Generic Tree Class

· Binary Trees and the Generic BinaryTree Class

· Binary Search Trees and the Generic BinarySearchTree Class

· BinaryHeaps

· Hash Tables

· Priority Queues

· Disjoint Sets

Graphs

· Shortest Paths

· Minimal Spanning Trees

Sorting

· O(n2) Sorts

· Shell Sort

· Merge Sort

· Heap Sort

· Quick Sort