Schedule  CS 314  Summer 2014
Readings are from Data Structures & Algorithm Analysis In Java, Author Weiss, ISBN: 9780132576277. Abbreviated as Weiss DSAA below.
Monday  Tuesday  Wednesday  Thursday  Friday 
6/2  6/3  6/4  6/5 Topic 1: Syllabus and Course Mechanics Slides: PPT, PDF, PDF 4up 1.Read the course syllabus, topics list, and schedule. Browse class materials on class web site. Topic 2: Algorithm Analysis 
6/6 
6/9 Topic 2: Algorithm Analysis 1.
Algorithm Analysis and
Big O at Wikipedia 
6/10 Discussion Sections Quiz 1 
6/11 Finish Topic 2, Algorithm Analysis Topic 3: Encapsulation  IntList Slides:
PPT,
PDF,
PDF 4up 
6/12 Topic 3: Encapsulation  IntList 1. The Java Tutorial online. Lesson:
Objects. Read the page on Objects and the sub pages on
Creating Objects and
using Objects. Assignment 1 due by 11 pm 
6/13 
6/16 Topic 4: Inheritance  SortedIntList Slides: PPT, PDF, PDF 4up 1. An
explanation
of inheritance from Stuart Reges, University of Washington 
6/17 Discussion Sections Quiz 2 
6/18 Topic 5 Polymorphism, GenericList Slides: PPT, PDF, PDF 4up 1.
Video: polymorphism in Java 
6/19 Topic 6: Java Generics Slides: PPT, PDF, PDF 4up Topic 6: 1. An explanation of the Java Collections Framework. 2. Weiss DSAA: Sections 1.4 and 1.5 3. The Java tutorial online. Generics. Read the Introduction and the section on Generic Types. Topic 7: Interfaces Assignment 2 due by 11 pm 
6/20 
6/23 Finish Topic 7, Iterators Topic 8: Iterators 1. Section 3.3.2 
6/24 Discussion Sections Quiz 3 
6/25 Topic 9: Maps Slides: PPT, PDF, PDF 4up 1. Weiss DSAA:
Section 4.8 
6/26 Topic 10: Abstract Classes Slides: PPT, PDF, PDF 4up 1. The Java Tutorial online. Read the topic on Abstract Methods and Classes: Assignment 3 due by 11 pm 
6/27 
6/30 Topic 11: Linked Lists Slides: PPT, PDF, PDF 4up 1. Weiss
DSAA: Sections 3.2.2 and 3.5 
7/1 Discussion Sections Quiz 4 
7/2 Topic 11 Linked Lists 
7/3 Topic 11 Linked Lists and catch up. Assignment 5 due by 11 pm (Note, there is no assignment 4) 
7/4 
7/7 Topic 12: Recursion Slides: PPT, PDF, PDF 4up 1. Weiss
DSAA: Sections 1.3

7/8 Discussion Sections Quiz 5 
7/9 Midterm in class  Topics 1  11. 
Topic 12: Recursion 1.
Video: writing a simple recursive method Topic 13: Recursive Backtracking 1.
Backtracking at Wikipedia. 
7/11 
7/14 Topic 13: Recursive Backtracking 1.
Another
explanation of recursive backtracking. Assignment 6 due by 11 pm

7/15 Discussion Sections Midterms returned Quiz 6 
7/16 Topic 14: Searching, Simple Sorts Slides: PPT, PDF, PDF 4up 1. Weiss DSAA: Sections 7.1, 7.2, and 7.3 
7/17 Topic 15: Stacks Slides: PPT, PDF, PDF 4up 1.Weiss DSAA:
Section 3.6 Assignment 7 due by 11 pm 
7/18 
7/21 Topic 16: Queues Slides: PPT, PDF, PDF 4up 1. Weiss
DSAA: Section 3.7 
7/22 Discussion Sections Quiz 7 
7/23 Topic 17: Quicksort and Mergesort Slides: PPT, PDF, PDF 4up 1. Sorting articles at Wikipedia: Quick
sort, Merge sort
and sorting articles at NIST DADS:
Selection Quick sort,
Merge sort 
7/24 Topic 18: Binary trees Slides: PPT, PDF, PDF 4up 1. Weiss
DSAA: Sections 4.1 and 4.2 Assignment 8 due by 11 pm 
7/25 
7/28 Topic 19: Binary search trees Slides: PPT, PDF, PDF 4up 1.
Weiss DSAA: Section 4.3 
7/29 Discussion Sections Quiz 8 
7/30 Topic 20: Huffman Coding Slides: PPT, PDF, PDF 4up 1. Weiss DSAA: Section 10.1.2 
7/31 Topic 21: Graphs Slides: PPT, PDF, PDF 4up 1. Weiss DSAA:
Chapter 9 Assignment 9 due by 11 pm 
8/1 
8/4 Topic 21: Graphs 
8/5 Discussion Sections Quiz 9 
8/6 Topic 22: Hash Tables Slides: PPT, PDF, PDF 4up 1. Weiss
DSAA: Chapter 5 
8/7 Assignment 10  Huffman Coding Overview Assignment 10 due by 11 pm 
8/8 
8/11 Topic 23: Red  Black Trees Slides: PPT, PDF, PDF 4up 1.
Weiss DSAA: Section 12.2 
8/12 Discussion Sections Quiz 10 
8/13 Topic 24: Heaps Slides: PPT, PDF, PDF 4up 1. Weiss DSAA:
Chapter 6 
8/14 Topic 25: Dynamic Programming Slides: PPT, PDF, PDF 4up 1. Weiss DSAA: Section 10.3 Assignment 11 due by 11 pm 
8/15 
8/18 Final Exam, 7  10 pm, Location TBA Extra Credit Assignment 12 due by 11 pm, Sunday, August 17. 
All slides in PDF 4 Up Format. (Large file! 180+ pages) Do not print this in the CS labs!