Schedule - CS 314 - Fall 2016

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

Monday Tue. Wednesday Thurs. Friday
8/22 8/23 8/24
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

8/25
 
8/26
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

8/29
Topic 2: Algorithm Analysis

No Discussion Sections Today

8/30 8/31
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

9/1 9/2
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.

9/5
Labor Day - No Class

No Discussion Sections Today

9/6 9/7
Topic 3: Encapsulation - IntList
9/8
Assignment 1 due by 11 pm
9/9
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.

9/12
Topic 4: Inheritance -  SortedIntList

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

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

Discussion Sections: Quiz 1

9/13
 
9/14
Topic 5 Polymorphism, GenericList
9/15
Assignment 2 due by 11 pm
9/16
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.
9/19
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 the first three sub topics (Defining an Interface, Implementing an Interface, Using an Interface as a Type)
3. Video: interfaces

Discussion Sections: Quiz 2

9/20 9/21
Topic 8: Iterators
Slides: PPT, PDF, PDF 4up

1. DSAA 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.

9/22
Assignment 3 due by 11 pm
9/23
Topic 9: Maps
Slides: PPT, PDF, PDF 4up

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

9/26
Topic 10: Abstract Classes
Slides: PPT, PDF, PDF 4up

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

Discussion Sections: Quiz 3

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

9/29
Assignment 5 due by 11 pm (Note, there is no assignment 4)
9/30
Topic 11 Linked Lists

1. Video: traversing a linked list


 

10/3
Topic 11 Linked Lists and catch up

Discussion Sections: Quiz 4

10/4
 
10/5
.Review for exam 1

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

UTC 4.102 for students in the 2-3 pm lecture
UTC 4.104 for students in the 3-4 pm lecture

10/6
 
10/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

10/10
Topic 12: Recursion

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

No Discussion Sections Today

10/11 10/12
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

10/13
Assignment 6 due by 11 pm
10/14
Topic 13: Recursive Backtracking

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

10/17
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

Return exams 1 in discussion section

10/18 10/19
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

 

10/20
Assignment 7 due by 11 pm
10/21
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

10/24
Topic 16: Queues

Discussion Sections: Quiz 5

10/25 10/26
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

10/27
Assignment 8 due by 11 pm
10/28
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.)

10/31
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 6

11/1 11/2
Topic 19: Binary search trees

 

11/3
Assignment 9 due by 11 pm
11/4
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. Demo of Red Black Tree
 

11/7
Topic 20: Huffman Coding
Slides: PPT, PDF, PDF 4up

1. Weiss DSAA: Section 10.1.2

Discussion Sections: Quiz 7

11/8 11/9
Review for exam 2

Exam 2 tonight, 7 - 9 pm
Exam 2 covers topics 1 - 19
UTC 4.102 for students in the 2-3 pm lecture
UTC 4.104 for students in the 3-4 pm lecture

11/10
 
11/11
Topic 20: Huffman Coding
11/14
Topic 21: Graphs
Slides: PPT, PDF, PDF 4up

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

No Discussion Sections

11/15 11/16
Topic 21: Graphs
11/17
Assignment 10 due by 11 pm
11/18
Topic 21: Graphs
11/21
Topic 22: Hash Tables
Slides: PPT, PDF, PDF 4up

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

Discussion Sections: Return Exam 2

11/22 11/23
Thanksgiving break - No class
11/24
No class
11/25
Thanksgiving break - No class
11/28
Topic 22: Hash Tables

Discussion Sections: Quiz 8

11/29 11/30
Topic 24: Heaps
Slides: PPT, PDF, PDF 4up

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

Assignment 11 due by 11 pm

12/1
 
12/2
Topic 25: Dynamic Programming
Slides: PPT, PDF, PDF 4up

1. Weiss DSAA: Section 10.3

12/5
Topic 25: Dynamic Programming

Discussion Sections: Quiz 9

Assignment 12 due by 11 pm
No slip days may be used on assignment 12.

12/6
Study day

 

12/7
Study day
12/8
.
12/9

All slides in PDF 4 Up Format.  200+ pages Do not print this in the CS labs!

All slides in PDF Format. 800+ Pages!! Do not print in the CS labs!!