To access the server when not on the Oxford College campus, you will need to setup VPN access
Dates  Week  Read / Understand  Labs / Related Code 

Aug 23 Aug 25 
1 
Syllabus Read Section 1.2 Review of Java (as necessary) Postfix Expressions Evaluating Infix Expressions Delimiter Matching 
Make sure you have access to requisite software Applications of Stacks: PostFixEvaluator.java FullyParenthesizedInfixEvaluator.java DelimiterChecker.java 
Aug 28 Sep 1 
2 
Read Section 1.3 Abstract Data Types Stacks Generics & Type Parameters Autoboxing & Autounboxing Iterating over Collections Resizing Arrays The Shunting Yard Algorithm 
Lab 01  Infix to Prefix due Sept 5, 11:59pm The Command Line (for those not coming from CS 170) How to Submit Labs StackOfStrings.java (quick & dirty, fixed capacity, arraybased) Stack.java (interface) StackArray.java 
Sep 4 Sep 8 
3 
Monday, Sept 4th  LABOR DAY HOLIDAY Read Section 1.4 Queues, Priority Queues, and Bags Linked Lists Garbage Collection The NQueens Problem & Backtracking Running Time Experiments Algorithm Analysis  Avg vs. Worst Case and Misleading Averages 
Lab 02  NQueens Problem due Sept 14, 11:59pm Queue.java (interface) QueueArray.java QueueList.java Bag.java (interface) BagArray.java LinkedList.java StackList.java Deque.java (interface) DequeList.java (a doubleended queue, doublylinked) Applications of Queues: 
Sep 11 Sep 15 
4 
Read Section 2.1 Analysis of Algorithms Sorting  First Thoughts The Comparable interface Bubble Sort Selection Sort Insertion Sort Loop Analysis Big O Notation and Growth Rates Analysis of linear search Analysis of binary search 
(implements Comparable) 
Sep 18 Sep 22 
5 
Read Sections 2.2, 2.3 Merge Sort and Analysis Quicksort Quick Sort Analysis Comparing Sorting Algorithms Test 1 (Friday) 
Lab 03  Comparing Sorting Methods due Sept 28, 11:59pm Review A1 Review A2 
Sep 25 Sep 29 
6 
Read Sections 2.4, 3.2 Binary Search Trees Operations on Binary Search Trees BST/Quicksort Partition Connection Heaps and Heapsort 

Oct 2 Oct 6 
7 
Tree Traversals (in/pre/postorder) Infix, prefix, and postfix expressions More on Trees (min, max, rank, select) 

Oct 9 Oct 13 
8 
Monday Oct 9  FALL BREAK Read Section 3.3 Balanced Search Trees Hibbard Deletion 23 Trees RedBlack Trees (height, insertions, rotations) 

Oct 16 Oct 20 
9 
Read Section 3.4 Hashing, Hash Codes Collision Handling, Separate Chaining, Linear Probing Rock Eagle 

Oct 23 Oct 27 
10 
Read Section 4.1 Test 2 Graphs Web Search Engines Representing Graphs Traversing Graphs Connected Components Six Degrees of Separation Examples of Digraph Applications Path Finding: Depth/Breadth First Search Solving mazes with Deques Connectivity Queries 
Read Section 4.2 
Oct 30 Nov 3 
11 
Read Sections 4.3, 4.4 Dijkstra's Shortest Path Algorithm The A* Algorithm Some Results From Graph Theory Prim's Algorithm Graphs  Coloring and Planarity 

Nov 6 Nov 10 
12 
If time allows, one of: Back Propagating Neural Networks Design Patterns Functional Programming 

Nov 13 Nov 17 
13  
Nov 20 Nov 24 
14  Nov 22  24  THANKSGIVING BREAK  
Nov 27 Dec 1 
15 
EVALUATIONS Review for Test 3 Test 3 

Dec 4  16  Review for Final Exam 