CS230 Data Structures - Spring 2007

CS230 Home Page | Syllabus | Lectures | Assignments | Handouts | Documentation | CS Dept

Syllabus

Monday
Tuesday
Thursday
Jan 29
Lec #01: Introduction to CS230 (H02).
Handouts: Reading: Review Downey 1, 2, 3, 4.1-4.7, 4.13, 4.15-4.17, 5 and 6
Jan 30
Lab #01: Introduction to Linux, X and Emacs.
Your first Java program: edit, compile & run (Hello.java)

Problem Set 1 out (arrays, text processing)(H08)
Feb 1
Lec #02 : Arrays (H09)
Reading: Downey Chap. 10
Feb 5
Lec #03: Text Processing (H10)
Reading: Downey Chap. 7
Feb 6
Lab #02: Debugging
Feb 8
Lec #04 : Java Input/Output (H11)
Feb 12
Lec #05: Extensible Arrays: Vectors and String Buffers (H12)
Feb 13
Lab #03: Vectors of Objects - Building a Diary of Bird Observations
Problem Set 1 due (solutions (H15))
Feb 15
Lec #06 : Object-Oriented Programming: Classes, Inheritance, and Interfaces (H14)
Problem Set 2 out (I/O, vectors)(H13)
Feb 19
No class: President's Day
Feb 20
Lab #04:Bird Diaries cont.: Reading from a file and the Web. Binary search.
Feb 22
Lec #07 : More Object-Oriented Programming (H14)
Feb 26
Lec #08 : Abstract Data Types(H16)
Problem Set 2 due (solutions (H24))
Problem Set 3 out (ADTs: IntVectors and Queues)(H17)
Feb 27
Lab #05: Implementing the Stack Interface, using Vectors
Mar 01
Lec #09 : Queues and List-Based ADT implementations(H18)
Mar 05
Lec #10 : MLists: Anatomy of a Data Structure
Mar 06
Lab #06:Implementing the Queue Interface, using MLists
WEDNESDAY MARCH 7:
Problem Set 3 due (solutions (H25))

Mar 08
Lec #11 : Ordered Structures(H21)
Take-Home Exam 1 out
Mar 12
Lec #12 : Priority Queues (H22)
Mar 13
Lab #07: The Card game of War
Mar 15
Lec #13 : Sets, Bags, and Tables (H23)
FRIDAY MARCH 16:
Exam 1 due (solutions (H34))

Mar 19 SPRING BREAK Mar 20
SPRING BREAK
Mar 22
SPRING BREAK
Mar 26
Lec #14 : Final Project (H26);
Graphical User Interfaces (GUIs) 1
CounterGUI.java
Reading:
Sun's Java Swing Tutorial. Parts of this tutorial you should read:
Mar 27
Lab #08 File Indexer: Using Sets, Tables and File I/O
Mar 29
Lec #15 : Web Indexing; GUIs 2
CounterGUIAnonymous.java
Problem Set 4 out (Web Crawler; Color Game GUI)(H17)
*** Sat Mar 31: Cirque du CS! ==> ***
Apr 02
Lec #16 : GUIS 3
FaceLook
Final Project Phase 1 (Proposal) due
Apr 03
Lab #09 Java GUIs: Mancala game
Apr 05
Lec #17 : Binary Trees (H28)
Apr 09
Lec #18 : More Binary Trees (H29)
Apr 10
Lab #10:
Problem Set 4 due (solutions (H39))
Apr 12
Lec #19 : Binary Search Trees (H30)
Problem Set 5 out (Tree Methods; Bag Implementation)(H31)
Apr 16
No class: Patriot's Day
Apr 17
MONDAY SCHEDULE
Lec #20: Binary Search Trees (H32)
Apr 19
Lec #21 : Recurrences (H33)
Apr 23
Lec #22: 2-3-Trees (H35)
Problem Set 5 due (solutions (H40))
Problem Set 6 out (Asymptotics, Recurrences, 2-3 Trees, Heaps)(H36)
Apr 24
Lab #11:
Final Project Phase 2 (Program Outline) due
Apr 26
Lec #23 : Heaps (H35)
Apr 30
Lec #24: CS230 Jeopardy (Exam 2 Review) (H38)
Problem Set 6 due (solutions (H41))
May 01
Lab #12: Exam 2 (in lab)

May 03
Lec #25 : Hashing (H43)
May 07
Lec #28: No Lecture: Project Meetings
Final Project Phase 3 (Program Skeleton) due
May 08
Lab #13:
Final Project Phase 4 (Informal Project Presentation in Lab) due
 
May 14
Final Project Phase 5 (Code Review) due
   
May 21
Final Project Phase 6 (Code Review) due