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 4upTopic 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 3Discussion section: 1. Quiz 1 2. Questions on assignment 1 Thur 7/12 Topic 3: Encapsulation - IntListTopic 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 4upTopic 6: Java Generics Slides: PPT, PDF, PDF 4up Discussion Section Assignment 1 due Topic 5: 1. Video: polymorphism in JavaTopic 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 4upTopic 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: interfacesTopic 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: IteratorsTopic 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 mapsAssignment 2 due by 11 pm Wed 7/18 Topic 10: Abstract Classes Slides: PPT, PDF, PDF 4upTopic 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.htmlTopic 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 3Assignment 3 due by 11 pm Mon 7/23 Topic 12: Recursion Slides: PPT, PDF, PDF 4upDiscussion 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 tracingDiscussion Section: 1. Quiz 6 2. Question on assignment 4 Tue 7/24 Topic 12: RecursionTopic 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 methodTopic 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 BacktrackingReview 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 4upDiscussion 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 searchDiscussion 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 4upDiscussion 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 4upAssignment 6 due Topic 16: 1. Chapter 16 of the Weiss book 2. Queues at Wikipedia. and at the NIST DADSAssignment 6 due by 11 pm Wed 8/1 Topic 17: Quicksort and Mergesort Slides: PPT, PDF, PDF 4upDiscussion 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 bookDiscussion Section: 1. Quiz 10 2. Assignment 7 questions Thur 8/2 Topic 18: Binary trees Slides: PPT, PDF, PDF 4upTopic 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 treesDiscussion Section Assignment 7 due Discussion Section: 1. Quiz 11 2. Assignment 7 questionsAssignment 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 4upAssignment 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 4upDiscussion Section Topic 22: 1. Chapter 20 of the Weiss book 2. Hash tables at NIST-DADSDiscussion 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 4upDiscussion 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!)