Tentative Class Schedule for CSC 162

Spring 2010

This will evolve as the semester progresses.  Click on chapter names (“Topic” column) for lecture notes; click on section names (reading assignments) for instructor’s comments on the textbook.  Unless otherwise noted (e.g., at the beginning of the semester), new lab assignments will be handed out on Thursday and due before the start of lab the following Thursday.  They will all be handed in via Blackboard. 

Date Session Topic Reading and assignments
Tues Jan 19 Lecture Chapter 1  Python review Read Chapter 1.
Thurs Jan 21 Lecture Classes Project 1 assigned.
Lab 1 Improving the Fraction class See Blackboard.  Due Tues. Jan. 26. 
Tues Jan 26 Lecture Chapter 2  Stacks Read Sections 2.1–2.3.
Lab 2 Infix, postfix, and error checking See Blackboard.  Due Tues. Jan. 28. 
Workshop Classes
Thurs Jan 28 Lecture Queues and deques Read Sections 2.4–2.7
Lab 3 Queue performance See Blackboard.  Due Tues. Feb. 2. 
Tues Feb 2 Lecture Chapter 3  Recursion Read Sections 3.1–3.4.2.
Lab 4 Recursion See Blackboard.  Due Tues. Feb. 9.
Workshop Stacks and queues
Thurs Feb 4 Lecture Backtracking search Project 1 due at noon.  Project 2 assigned.
Lab More recursion See Blackboard.  Due Thurs. Feb. 11. 
Tues Feb 9 Lecture Backtracking (continued)
Lab (no new assignment) Work on lab from Thurs., or on Project 2.
Workshop Recursion, permutations
Thurs Feb 11 Lecture Dynamic programming; start linked lists Read Section 7.3.
Lab Linked-list-based sets See Blackboard.  Due Thurs. Feb. 18. 
Tues Feb 16 Lecture Linked lists (continued); start Big-O Read Section 7.2.
Lab (no new assignment) Work on lab from Thurs., or on Project 2.
Workshop Dynamic programming
Thurs Feb 18 Lecture Chapter 4  Big-O, searching Read Sections 4.1–4.2 and Section 4.3.
Lab Pascal’s Triangle See Blackboard.  Due Thurs. Feb. 25. 
Tues Feb 23 Lecture Sorting Read Sections 4.4–4.5Project 2 due at noon.  Project 3 assigned.
Lab (no new assignment) Work on lab from Thurs., or on Project 3.
Workshop Hashing
Thurs Feb 25 Lecture Sorting (continued)
Lab Visualizing sorts See Blackboard.  Due Tues. Mar. 2. 
Tues Mar 2 Lecture Midterm review.  BRING QUESTIONS Project 3 due at noon.
Lab (no new assignment) Prepare for midterm.
Workshop Sorting and order statistics
Thurs Mar 4 Midterm Exam In class.
SPRING BREAK
Tues Mar 16 Lecture Chapter 5  Trees
Guest lecture; Prof. Scott out of town
Read Sections 5.1–5.4Project 4 assigned.
Lab (no new assignment) Get started on Project 4.
Workshop Enumerating trees
Thurs Mar 18 Lecture Syntax trees; simple parsing Read Section 5.5
Lab Tree implementations See Blackboard.  Due Thurs. Mar. 25. 
Tues Mar 23 Lecture Traversals; binary search trees Read Section 5.6.
Lab (no new assignment) Work on lab from Thurs., or on Project 4.
Workshop Expression trees
Thurs Mar 25 Lecture Overview of balanced trees (no reading assignment)
Lab Binary search trees See Blackboard.  Due Thurs. Apr. 1.
Tues Mar 30 Lecture Skip lists Read Section 7.4.  Project 4 due.  Project 5 assigned.
Lab (no new assignment) Work on lab from Thurs., or get started on on Project 5.
Workshop Splay trees
Thurs Apr 1 Lecture OctTrees Read Section 7.5.
Lab OctTrees See Blackboard.  Due Thurs. Apr. 8.
Tues Apr 6 Lecture Chapter 6  Graphs Read Sections 6.1–6.3.
Lab (no new assignment) Work on lab from Thurs., or on Project 5.
Workshop Graphs, connectivity
Thurs Apr 8 Lecture Breadth-first and depth-first search Read Sections 6.4.1–6.4.2.
Lab Edge tests, transpose See Blackboard.  Due Thurs. Apr. 15.
Tues Apr 13 Lecture Knight's tour, topological sort; threads & events Read Section 6.4.3Project 5 due.  Project 6 assigned.
Lab (no new assignment) Work on lab from Thurs., or on Project 6.
Workshop Graph searching
Thurs Apr 15 Lecture Strongly connected components, shortest paths Read Sections 6.4.4–6.4.5.
Lab Topological sorts See Blackboard.  Due Thurs. Apr. 22.
Tues Apr 20 Lecture Spanning Trees;  Python extras Read Sections 6.4.6–6.5.
Lab (no new assignment) Work on lab from Thurs., or on Project 6.
Workshop Kruskal’s algorithm
Thurs Apr 22 Lecture Web scripting; intro to Java
Lab (no new assignment) Work on Project 6.
Tues Apr 27 Lecture More on Java; final review BRING QUESTIONS Please fill out ONLINE COURSE EVALUATION.
Fri Apr. 30 Project 6 due at noon.
Fri May 7 Final Exam 4–7 pm, CSB 632.

Last Change:  12 January 2011 / Michael Scott's email address