Schedule - CS 314 - Summer 2012

Date Topic Reading, Links, and Events (The Weiss book is Data Structures and Problem Solving using Java, 4th edition by Mark Allen Weiss ISBN 978-0321541406)
Mon 7/9 Topic 1: Syllabus and Course Mechanics
Slides: PPT, PDF, PDF 4up

Topic 2: Algorithm Analysis
Slides: PPT, PDF, PDF 4up

Topic 1:
1.Read the course syllabus, topics list, and schedule. Browse class materials on class web site.

Topic 2:
1. Chapter 5 of the Weiss textbook
2. Another explanation of Big O.
3. Video on complexity

No discussion section today.

Tue 7/10 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
Wed 7/11 Topic 3: Encapsulation - IntList
Slides: PPT, PDF, PDF 4up

Discussion Section

1. The Java Tutorial online. Lesson: Object-Oriented Programming Concepts. Read the following topics: What is an Object? What is a Class?
download.oracle.com/javase/tutorial/java/concepts/index.html
2. Chapter 3

Discussion section:
1. Quiz 1
2. Questions on assignment 1

Thur 7/12 Topic 3: Encapsulation - IntList

Topic 4: Inheritance -  SortedIntList
Slides: PPT, PDF, PDF 4up

Topic 3:
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.

Topic 4:
1. Chapter 4, sections 4.1 - 4.6
2. An explanation of inheritance from Stuart Reges, University of Arizona
3. The Java Tutorial online. What is Inheritance?
download.oracle.com/javase/tutorial/java/concepts/inheritance.html
4. Video: super and sub classes
5. 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: download.oracle.com/javase/tutorial/java/IandI/subclasses.html

Fri 7/13 Topic 5 Polymorphism, GenericList
Slides: PPT, PDF, PDF 4up

Topic 6: Java Generics
Slides: PPT, PDF, PDF 4up

Discussion Section

Assignment 1 due

Topic 5:
1. Video: polymorphism in Java

Topic 6:
1. An explanation of the Java Collections Framework.
2. Sections 4.7 and 6.3 of the Weiss book
3. The Java tutorial online. Generics. Read the Introduction and the section on Generic Types. download.oracle.com/javase/tutorial/java/generics/index.html

Discussion Section:
1. Quiz 2
2. Questions on assignment 2

Assignment 1 due by 11 pm

Mon 7/16 Topic 7: Interfaces
Slides: PPT, PDF, PDF 4up

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

Discussion Section

Topic 7:
1. The Java Tutorial online. Read the entry on What is an Interface. download.oracle.com/javase/tutorial/java/concepts/interface.html
2. The Java Tutorial online. Lesson: Interfaces. Read this page and all of the sub topics for Interfaces
download.oracle.com/javase/tutorial/java/IandI/createinterface.html
3. Video: interfaces

Topic 8:
1. Sections 6.2, 6.3, 15.1, 15.2, and 15.5 of the Weiss book
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. download.oracle.com/javase/tutorial/java/javaOO/nested.html|
3. Iterators at Wikipedia.

Discussion Section:
1. Quiz 3
2. Questions on assignment 2

Tue 7/17 Topic 8: Iterators

Topic 9: Maps
Slides: PPT, PDF, PDF 4up

Assignment 2 due

Topic 9:
1. Section 6.8 of the Weiss book
2. The Java Tutorial online, the Map Interface: http://download.oracle.com/javase/tutorial/collections/interfaces/map.html
3. Video: using maps

Assignment 2 due by 11 pm

Wed 7/18 Topic 10: Abstract Classes
Slides: PPT, PDF, PDF 4up

Topic 11: Linked Lists
Slides: PPT, PDF, PDF 4up

Discussion Section

Topic 10:
1. The Java Tutorial online. Read the topic on Abstract Methods and Classes:
download.oracle.com/javase/tutorial/java/IandI/abstract.html

Topic 11:
1. Chapter 17 of the Weiss book
2. Linked Lists at Wikipedia. and at the NIST DADS
3. Video: working with nodes

Discussion Section:
1. Quiz 4
2. Questions on assignment 3

Thur 7/19 Topic 11 Linked Lists 1. Video: traversing a linked list
Fri 7/20 Topic 11 Linked Lists and catch up.

Discussion Section

Assignment 3 due

Discussion Section:
1. Quiz 5
2. Questions on assignment 3

Assignment 3 due by 11 pm

Mon 7/23 Topic 12: Recursion
Slides: PPT, PDF, PDF 4up

Discussion Section

1. Sections 7.1 - 7.4 of the Weiss book
2. Recursion at Wikipedia.
3. Recursion at the NIST Dictionary of Algorithms and Data Structures
4. Video covering recursive tracing

Discussion Section:
1. Quiz 6
2. Question on assignment 4

Tue 7/24 Topic 12: Recursion

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

Assignment 4 due

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

Topic 13:
1. Backtracking at Wikipedia.
2. Backtracking at the NIST Dictionary of Algorithms and Data Structures
3. Section 7.7 of the Weiss book

Assignment 4 due by 11 pm

Wed 7/25 Topic 13: Recursive Backtracking

Review for midterm

Discussion Section

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

Discussion Section:
1. Quiz 7
2. Review for midterm

Thur 7/26 Midterm in Class
Location: UTC 3.132
Midterm in Class
Location: UTC 3.132
Fri 7/27 Topic 14: Searching, Simple Sorts
Slides: PPT, PDF, PDF 4up

Discussion Section

Assignment 5 due

Topic 16:
1. Sections 5.6 and 8.1 - 8.3 of the Weiss book
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 Section:
1. Quiz 8
2. Question on assignment 5

Assignment 5 due by 11 pm

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

Discussion Section

Topic 15:
1. Section 11.1, Chapter 16, 11.2 of the Weiss book
2. Stacks at Wikipedia.  and at the NIST DADS
3. postfix notation at Wikipedia

Discussion Section:
1. Quiz 9
2. Review midterm results

Tue 7/31 Topic 16: Queues
Slides: PPT, PDF, PDF 4up

Assignment 6 due

Topic 16:
1. Chapter 16 of the Weiss book
2. Queues at Wikipedia. and at the NIST DADS

Assignment 6 due by 11 pm

Wed 8/1 Topic 17: Quicksort and Mergesort
Slides: PPT, PDF, PDF 4up

Discussion Section

Topic 17:
1. Sorting articles at Wikipedia: Quick sort, Merge sort and sorting articles at NIST DADS: Selection  Quick sort, Merge sort
2. Video: sorting
3. Sections 8.5 - 8.8 of the Weiss book

Discussion Section:
1. Quiz 10
2. Assignment 7 questions

Thur 8/2 Topic 18: Binary trees
Slides: PPT, PDF, PDF 4up

Topic 19: Binary search trees
Slides: PPT, PDF, PDF 4up

Topic 18:
1. Chapter 18 of the Weiss book
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.)

Topic 19:
1. Sections 19.1 - 19.3 of the Weiss book
2. Binary Search Trees at Wikipedia and at the NIST DADS
3. Video: x = change(x);

Fri 8/3 Topic 19: Binary search trees

Discussion Section

Assignment 7 due

Discussion Section:
1. Quiz 11
2. Assignment 7 questions

Assignment 7 due by 11 pm

Mon 8/6 Topic 20: Huffman Coding
Slides: PPT, PDF, PDF 4up

Discussion Section:

Discussion Section:
1. Quiz 12
2. Assignment 8 questions
Tue 8/7 Topic 21: Graphs
Slides: PPT, PDF, PDF 4up

Assignment 8 due

Topic 21:
1. Chapter 14 of the Weiss book
2. Graphs at NIST-DADS

Assignment 8 due by 11 pm

Wed 8/8 Topic 22: Hash Tables
Slides: PPT, PDF, PDF 4up

Discussion Section

Topic 22:
1. Chapter 20 of the Weiss book
2. Hash tables at NIST-DADS

Discussion Section:
1. Quiz 13
2. Assignment 9 questions

Thur 8/9 Topic 23: Red - Black Trees
Slides: PPT, PDF, PDF 4up
Topic 23:
1. Section 19.5 of the Weiss book
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.
Fri 8/10 Topic 24: Heaps
Slides: PPT, PDF, PDF 4up

Discussion Section

Topic 24:
1. Chapter 21 of the Weiss book
2. Heaps at NIST-DADS

Discussion Section:
1. Quiz 14
2. Assignment 9 questions
3. Review for Final Exam

Sat. 8/11 Final Exam, 2 - 5 pm, Location TBD
Mon 8/13 Extra Credit Assignment Due by 1 pm. (not 11 pm!)