Weekly Schedule
Introduction to Computer Science III
ICS-23: Lecture A/Labs 1-4
Spring 2008
For an alternative presentation of the listing of course materials, see the
Lectures page, or the
Calendar section of the
Syllabus.
Week 1
- Monday (3/31): Office Hours
-
I'll be in my office for regular office hours today (12:00-5:00)
Please feel free to stop by, introduce yourself, talk about the
course, get your picture, taken, etc.
- Tuesday (4/1): Lecture
-
Course Overview, Object/Instance Pictures,
Interfaces
Student presentation of solutions: 5, 9, 10
Eclipse IDE + Checkmate
-
Handout: Academic Integrity (to be signed and returned in Friday's Lab)
- Wednesday (4/2): Lab
- Thursday (4/3): Lecture
Linked Lists, List Processing, Recursion on Linked Lists,
2-Dimensional Arrays
(Notes)
- Friday (4/4): Lab
- Discuss/Start
Program #1
- Turn in Signed Academic Integrity document
- Quiz #1: Handed out in class
(
Eclipse Helper project for Quiz)
(due on Tuesday, 4/8, at the start of Lecture;
turn in only paper quiz; write in your correct Lab #)
------------------------------------------------------------------------------
Week 2
- Monday (4/7): Office Hours
-
I'll mostly be in my office for regular office hours today
(12:00-5:00)
I might have to be gone for about an hour, late in the day, in which
case I'll leave a note on my door saying if/when I'll return.
- Tuesday (4/8): Lecture
-
Generic Collection Classes (and their Iterators),
Correctness/Performance of Implementations
Lists/Sets, Maps
-
Quiz #1 Due at the Start of Class
- Wednesday (4/9): Lab
- Work on Program #1
If you have not handed in the program, I expect you to attend lab.
- Thursday (4/10): Lecture
Analysis of Algorithms: O, Omega, and Theta notations
Please read sections 4.1-4.3 of Goodrich/Tamassia before class.
- Friday (4/11): Lab
------------------------------------------------------------------------------
Week 3
- Monday (4/14): Office Hours
-
Regular Office Hours, 12:00 noon - 5:00 pm
- Tuesday (4/15): Lecture
-
Advanced Linked Lists: Header, Trailer, Doubly-linked, Circular
(see the "Special Linked Lists" section).
-
Quiz #2 Due at the Start of Class
- Wednesday (4/16): Lab
- Work on Program #2
I will review the Graph Problems (#2, #3)
If you have not handed in all parts of this program, I expect you to
attend lab.
Feel free to ask question about the problem themselves or generally
using collection classes.
- Thursday (4/17): Lecture
- Friday (4/18): Lab
- Work on Program #2
I will review the Automata Problems (#4, #5)
- Quiz #3: Handed out in class
(due on Tuesday, 4/22, at the start of Lecture;
turn in only paper quiz; write in your correct Lab #)
------------------------------------------------------------------------------
Week 4
- Monday (4/21): Office Hours
-
Regular Office Hours, 12:00 noon - 5:00 pm
- Tuesday (4/22): Lecture
-
Heaps section in
Special Trees
AVL (and other self-balancing trees)
-
Quiz #3 Due at the Start of Class
- Wednesday (4/23): Lab
- Work on Program #2
I will review the Word Generator Problem (#6)
If you have not handed in all parts of this program, I expect you to
attend lab.
Feel free to ask question about the problem themselves or generally
using collection classes.
- Thursday (4/24): Lecture
General Trees: Children via Sets and Lists, Binary embedding,
Digital Trees via Maps, Structure Trees (Expressions)
See Nary Trees and Expression Trees in
Special Trees
- Friday (4/25): Lab
- Discuss/Start
Program #3
- Quiz #4: Handed out in class
(due on Tuesday, 4/29, at the start of Lecture;
turn in only paper quiz; write in your correct Lab #)
------------------------------------------------------------------------------
Week 5
- Monday (4/28): Office Hours
-
Regular Office Hours, 12:00 noon - 5:00 pm
- Tuesday (4/29): Lecture
- Wednesday (4/30): Lab
- Work on Program #3
If you have not handed in all parts of this program, I expect you to
attend lab.
- I will have to attend to some issues to a new house I am purchasing
and might be absent from some labs.
- Thursday (5/1): Lecture
- Friday (5/2): Lab
- Work on Program #3
If you have not handed in all parts of this program, I expect you to
attend lab.
- I will have to attend to some issues to a new house I am purchasing
and might be absent from some labs.
- Quiz #5: Handed out in class
(
Eclipse Helper project for Quiz)
(due on Tuesday, 5/6, at the start of Lecture;
turn in only paper quiz; write in your correct Lab #)
------------------------------------------------------------------------------
Week 6
- Monday (5/5): Office Hours
-
Regular Office Hours, 12:00 noon - 5:00 pm
- Tuesday (5/6): Lecture
-
Completion of Hashing Lecture
I'll answer questions about any material we have covered.
-
Quiz #5 Due at the Start of Class
- Wednesday (5/7): Lab
- Work on Program #3
If you have not handed in all parts of this program, I expect you to
attend lab.
- Thursday (5/8): Lecture
- Skip Lists (and start Sorting)
- Friday (5/9): Lab
- Work on Program #3 (and/or Start Program #4)
If you have not handed in all parts of this program, I expect you to
attend lab.
- No Quiz This week
------------------------------------------------------------------------------
Week 7
- Monday (5/12): Office Hours
-
Office Hours Cancelled this Week
- Tuesday (5/13): Lecture
-
Skip Lists, Start of Sorting Lecture
Characteristics, O(N^2) Sorting
- Wednesday (5/14): Lab
- I will not be attending this Lab
- Work on Program #4
If you have not handed in all parts of this program, I expect you to
attend lab.
- Thursday (5/15): Lecture
- Finish Sorting
O(N Log2 N) Sorting Heap/Merge/Quick Sorts,
Lower bounds, Buket/Radix Sorting
- Friday (5/16): Lab
- I will not be attending this Lab
- Work on Program #4
If you have not handed in all parts of this program, I expect you to
attend lab.
- Quiz #6: Handed out in class (or
online)
(
Eclipse Helper project for Quiz)
(due on Thursday, 5/22, at the start of Lecture;
turn in both the paper quiz AND the filled-in helper)
------------------------------------------------------------------------------
Week 8
- Monday (5/19): Office Hours
-
Regular Office Hours, 12:00 noon - 5:00 pm
- Tuesday (5/20): Lecture
-
Graphs: Terminology and Representations
- Wednesday (5/21): Lab
- Work on Program #4
If you have not handed in all parts of this program, I expect you to
attend lab.
- Thursday (5/22): Lecture
- Graph Algorithms I: Topological Sorting, "Kevin Bacon" Searching,
Minimum Spanning Trees
- Friday (5/23): Lab
- Work on Program #4 (and/or Start Program #5)
If you have not handed in all parts of this program, I expect you to
attend lab.
- No Quiz This week
------------------------------------------------------------------------------
Week 9
- Monday (5/26): Office Hours
-
Slightly Delayed Office Hours, 1:00 pm - 5:00 pm
- Tuesday (5/27): Lecture
- Graph Algorithms I: Fast Union/Find for Equivalences Classes, Dijkstra's
All Minimum Paths, Connected Components
- Wednesday (5/28): Lab
- Work on Program #5
If you have not handed in all parts of this program, I expect you to
attend lab.
- Thursday (5/29): Lecture
- Memory (and its Interaction with Algorithms)
- Friday (5/30): Lab
- Work on Program #5
If you have not handed in all parts of this program, I expect you to
attend lab.
- Quiz #8: Handed out
online)
(
Eclipse Helper project for Quiz)
(due on Tuesday, 6/3, at the start of Lecture;
turn in both the paper quiz AND the filled-in helper)
------------------------------------------------------------------------------
Week 10
- Monday (6/2): Office Hours
-
Regular Office Hours, 12:00 noon - 5:00 pm
- Tuesday (6/3): Lecture
- Memory-Limited Searching/Sorting and/or Special Lecture
(Infinity and Computer Programs)
- Wednesday (6/4): Lab
- Work on Program #5
If you have not handed in all parts of this program, I expect you to
attend lab.
- Thursday (6/5): Lecture
- Review for Midterm Written Exam
Bring questions from the readings, problems, quizzes, etc.
- Final Comments and Written Survey (to be filled in during class)
- Friday (6/6): Lab
- Work on Program #5 (Due today, at 11:30pm)
If you have not handed in all parts of this program, I expect you to
attend lab.
- Note that our Final Exam is on Tuesday, June 10th, 4:00pm - 6:00pm
(see the
Final Exam Schedule, Spring 2008).
------------------------------------------------------------------------------