Schedule - CS 314 - Spring 2015

Readings are from Data Structures & Algorithm Analysis In Java, Author Weiss, ISBN: 9780132576277. Abbreviated as Weiss DSAA below.

Monday Tuesday Wednesday Thursday Friday
1/19 1/20 1/21
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

Discussion sections do not  meet today,

1/22
 
1/23
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

1/26
Topic 2: Algorithm Analysis

Discussion Sections: Quiz 1

1/27 1/28
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

Discussion Sections: Quiz 1

1/29 1/30
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.

2/2
Topic 3: Encapsulation - IntList

Discussion Sections: Quiz 2
 

2/3 2/4
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.

Discussion Sections: Quiz 2

2/5
Assignment 1 due by 11 pm
2/6
Topic 4: Inheritance -  SortedIntList

Topic 5 Polymorphism, GenericList
Slides: PPT, PDF, PDF 4up

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

2/9
Topic 5 Polymorphism, GenericList

Discussion Sections: Quiz 3

2/10
 
2/11
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.

Discussion Sections: Quiz 3

2/12
Assignment 2 due by 11 pm
2/13
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
2/16
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.

Discussion Sections: Quiz 4

2/17 2/18
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

Discussion Sections: Quiz 4

2/19
Assignment 3 due by 11 pm
2/20
Topic 10: Abstract Classes
Slides: PPT, PDF, PDF 4up

1. The Java Tutorial online. Read the topic on Abstract Methods and Classes:

2/23
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

Discussion Sections: Quiz 5

2/24
 
2/25
Review for Exam 1\

Discussion Sections: Quiz 5

Exam 1 tonight, 7 - 9 pm in WEL 2.224
Exam 1 covers topics 1 - 10.

 

2/26
 
2/27
Topic 11 Linked Lists

1. Video: traversing a linked list

3/2
Topic 11 Linked Lists and catch up.

Discussion Sections: Return Exam 1

3/3
 
3/4
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

Discussion Sections: Return Exam 1

3/5
Assignment 5 due by 11 pm (Note, there is no assignment 4)
3/6
Topic 12: Recursion

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

3/9
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.5

Discussion Sections: Quiz 6

3/10 3/11
Topic 13: Recursive Backtracking

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

Discussion Sections: Quiz 6

3/12
Assignment 6 due by 11 pm
3/13
Catch up day
3/16 Spring Break 3/17 3/18 3/19 3/20
3/23
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

Discussion Sections: Quiz 7

3/24 3/25
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

Discussion Sections: Quiz 7

3/26
Assignment 7 due by 11 pm
3/27
Topic 15: Stacks

Topic 16: Queues
Slides: PPT, PDF, PDF 4up

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

3/30
Topic 16: Queues

Discussion Sections: Quiz 8

3/31 4/1
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

Discussion Sections: Quiz 8

4/2
Assignment 8 due by 11 pm
4/3
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.)

4/6
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);

Discussion Sections: Quiz 9

4/7 4/8
Topic 19: Binary search trees

Discussion Sections: Quiz 9

4/9
Assignment 9 due by 11 pm
4/10
Topic 20: Huffman Coding
Slides: PPT, PDF, PDF 4up

1. Weiss DSAA: Section 10.1.2

4/13
Review for exam 2

No Discussion Sections

4/14
Exam 2 tonight, 7 - 9 pm in WEL 2.224
Exam 2 covers topics 1 - 19
4/15
Topic 20: Huffman Coding

No Discussion Sections

4/16 4/17
Topic 21: Graphs
Slides: PPT, PDF, PDF 4up

1. Weiss DSAA: Chapter 9
2. Graphs at NIST-DADS

4/20
Topic 21: Graphs

Discussion Sections: Return Exam 2

 

4/21 4/22
Topic 21: Graphs

Discussion Sections: Return Exam 2

4/23
Assignment 10 due by 11 pm
4/24
Topic 22: Hash Tables
Slides: PPT, PDF, PDF 4up

1. Weiss DSAA: Chapter 5
2. Hash tables at NIST-DADS

4/27
Topic 22: Hash Tables

Discussion Sections: Quiz 10

 

4/28 4/29
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.

Discussion Sections: Quiz 10

4/30
Assignment 11 due by 11 pm
5/1
Topic 24: Heaps
Slides: PPT, PDF, PDF 4up

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

5/4
Topic 25: Dynamic Programming
Slides: PPT, PDF, PDF 4up

1. Weiss DSAA: Section 10.3

No Discussion Sections

5/5
 
5/6
Topic 25: Dynamic Programming\

No Discussion Sections

5/7
Assignment 12 due by 11 pm
5/8
Review for Final
5/11
 
5/12
 
5/13
Finals start.
Time and Location of the CS314 final to be announced.
The final exam could be as late as Tuesday, May 19.
5/14 5/15

All slides in PDF 4 Up Format. (Large file! 180+ pages) Do not print this in the CS labs!

PowerPoint Slides Zipped