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
Slides: PPT, PDF, PDF 4up
Topic 2:
1. Weiss DSAA: Section 1.2 and Chapter 2
2. Another explanation of Big O.
3. Video on complexity

6/6
6/9
Topic 2: Algorithm Analysis

1. Algorithm Analysis and Big O at Wikipedia
2. The National Institute of Standards and Technology, Dictionary of Data Structures and Algorithms (NIST DADS) page on Big O notation.
3. Video: complexity and effeciency

6/10
Discussion Sections

Quiz 1

6/11
Finish Topic 2, Algorithm Analysis

Topic 3: Encapsulation - IntList

Slides: PPT, PDF, PDF 4up
1. The Java Tutorial online. Lesson: Object-Oriented Programming Concepts. Read the following topics: What is an Object? What is a Class?
2. Weiss DSAA: Sections 3.1, 3.2.1, and 3.4

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.
2. The Java Tutorial online. Classes. Read all the subtopics of in the Classes section.

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
2. The Java Tutorial online. What is Inheritance?
3. Video: super and sub classes
4. The Java Tutorial online. A more detailed look at inheritance. Read this page and all the following sub topics: Overriding and Hiding Methods, Hiding Fields, Using the Keyword super, and Object as a Superclass:

6/17
Discussion Sections

Quiz 2

6/18
Topic 5 Polymorphism, GenericList
Slides: PPT, PDF, PDF 4up

1. Video: polymorphism in Java
2.  Weiss DSAA: Section 1.4

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
Slides: PPT, PDF, PDF 4up
1. The Java Tutorial online. Read the entry on What is an Interface.
2. The Java Tutorial online. Lesson: Interfaces. Read this page and all of the sub topics for Interfaces
3. Video: interfaces

Assignment 2 due by 11 pm

6/20
6/23
Finish Topic 7, Iterators

Topic 8: Iterators
Slides: PPT, PDF, PDF 4up

1. Section 3.3.2
2. The Java Tutorial online. Nested Classes. Read the main entry on Nested Classes and both subtopics on Inner Class Example and Summary of Nested Classes. |
3. Iterators at Wikipedia.

6/24
Discussion Sections

Quiz 3

6/25
Topic 9: Maps
Slides: PPT, PDF, PDF 4up

1. Weiss DSAA: Section 4.8
2. The Java Tutorial online, the Map Interface:
3. Video: using maps

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
2. Linked Lists at Wikipedia. and at the NIST DADS
3. Video: working with nodes

7/1
Discussion Sections

Quiz 4

7/2
Topic 11 Linked Lists

1. Video: traversing a linked list

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
2. Recursion at Wikipedia.
3. Recursion at the NIST Dictionary of Algorithms and Data Structures
4. Video covering recursive tracing

 

7/8
Discussion Sections

Quiz 5

7/9
Midterm in class - Topics 1 - 11.
Topic 12: Recursion

1. Video: writing a simple recursive method
2. Video: writing another recursive method

Topic 13: Recursive Backtracking
Slides: PPT, PDF, PDF 4up

1. Backtracking at Wikipedia.
2. Backtracking at the NIST Dictionary of Algorithms and Data Structures
3. Weiss DSAA: Section 10.5k

7/11
7/14
Topic 13: Recursive Backtracking

1. Another explanation of recursive backtracking.
2. The 8 queens puzzle at Wikipedia.
3. the knapsack problem at Wikipedia.

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
2. Searching articles at Wikipedia: Linear Search, Binary Search and at NIST DADS: Linear Search, Binary Search
3. Sorting articles at Wikipedia: Selection Sort, Insertion Sort and sorting articles at NIST DADS: Selection Sort, Insertion Sort
4. Video: binary search

7/17
Topic 15: Stacks
Slides: PPT, PDF, PDF 4up

1.Weiss DSAA: Section 3.6
2. Stacks at Wikipedia.  and at the NIST DADS
3. postfix notation at Wikipedia

Assignment 7 due by 11 pm

7/18
7/21
Topic 16: Queues
Slides: PPT, PDF, PDF 4up

1.  Weiss DSAA: Section 3.7
2. Queues at Wikipedia. and at the NIST DADS

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
2. Video: sorting
3. Weiss DSAA: Sections 7.6, 7.7, and 7.8

7/24
Topic 18: Binary trees
Slides: PPT, PDF, PDF 4up

1. Weiss DSAA: Sections 4.1 and 4.2
2. Binary Trees at Wikipedia and at the NIST DADS (See the main page and search for the term traversal to find information the various tree traversal algorithms.)

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
2. Binary Search Trees at Wikipedia and at the NIST DADS
3. Video: x = change(x);

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
2. Graphs at NIST-DADS

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
2. Hash tables at NIST-DADS

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
2. Red-Black Trees at Wikipedia
3. Red-Black Trees at the NIST Dictionary of Algorithms and Data Structures
4. An Applet showing Red-Black trees in action.

8/12
Discussion Sections

Quiz 10

8/13
Topic 24: Heaps
Slides: PPT, PDF, PDF 4up

1. Weiss DSAA: Chapter 6
2. Heaps at NIST-DADS

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!