Course Home | Homework | Programming | Schedule & Lecture Notes | Submit

Saint Louis University

Computer Science A220/P126
Data Structures and Object-Oriented Programming

Michael Goldwasser

Spring 2005

Dept. of Math & Computer Science


SCHEDULE

Please note that the schedule for future classes is tentative.

Also note: For each lecture, we denote both a topic as well as the associated reading in the textbook. The live link on the 'topic' leads to a page of my personal notes for that lecture. Those personal notes are not nearly as complete or polished as the associated readings from the text. In truth, they exist mostly to provide a brief outline of the day's lecture. Students are expected to read the associated sections of the text. In cases where my notes include material which is not explicitly in the text, I will add the word "notes" to the explicit reading list.

Date Topic Text Reading
Mon, Jan 10 Introduction Ch. 2.1
Wed, Jan 12 Preliminary Review of C++ Ch. 1
Fri, Jan 14 More C++ details
templates, copy constructors, assignment operator
Guest Lecturer: Dr. Bryan Clair
parts of Ch. 1.5
Mon, Jan 17 No Class: Martin Luther King Day
Wed, Jan 19 Linear Recursion Ch. 2.5.1, 4.1
Fri, Jan 21 Binary Recursion Ch. 4.1 and notes
Mon, Jan 24 Multiple Recursion
(the Magic Square assignment)
Ch. 4.1 and notes
Wed, Jan 26 Stacks (interface) Ch. 4.2
Fri, Jan 28 Stacks (array implementation) Ch. 4.2
Mon, Jan 31 Stacks (dynamic memory)
Queues
Ch. 4.2, 4.3
Wed, Feb 2 Queues, Circular Arrays Ch. 4.3
Fri, Feb 4 Analysis Tools Ch. 3
Mon, Feb 7
Wed, Feb 9 Linked Lists
(conceptually)
Ch. 4.4
Fri, Feb 11 Linked Lists
(as Stack implementation)
Ch. 4.4
Mon, Feb 14 Linked Lists
(housekeeping functions, Queue implementation)
Ch. 4.4
Wed, Feb 16
Fri, Feb 18 First Exam (includes material through Feb 11 - info )
Mon, Feb 21 Guest Lecture: Data Compression
Wed, Feb 23 Double-ended queues
(doubly-linked lists)
Ch. 4.5
Fri, Feb 25 Use of Sentinels Ch. 4.5
Mon, Feb 28 Guest Lecture: Hashing
Wed, Mar 2 Vector ADT Ch. 5.1
Fri, Mar 4 Expandable Arrays
(Amortized Analysis)
Ch. 5.1.3
Mon, Mar 7 No Class: Spring Break
Wed, Mar 9
Fri, Mar 11
Mon, Mar 14 List ADT Ch. 5.2
Wed, Mar 16 List implementation details Ch. 5.2
Fri, Mar 18 Sequence ADT, Iterators Ch. 5.3, 5.5
Mon, Mar 21 Discussion of current homework and program
Wed, Mar 23 Trees, Binary Trees (ADTs) Ch. 6.1
Ch. 6.3.1-6.3.3
Fri, Mar 25 No Class: Good Friday
Mon, Mar 28 Recursive Algorithms and Trees Ch. 6.2
Wed, Mar 30 Euler Tours Ch. 6.3.4
Fri, Apr 1 Second Exam (includes material through Mar 21 - info )
Mon, Apr 4 Tree Implementations Ch 6.4
Wed, Apr 6 Introduction to Priority Queues skim Ch. 7.1-7.3
demo
Fri, Apr 8 Priority Queue ADT
(Comparator and Composition design patterns)
Ch. 7.1
Mon, Apr 11 Priority Queues and Sorting Ch. 7.1.2, 7.2.3, 7.3.4
Wed, Apr 13 Heap Implementation of Priority Queues
(more details)
Ch. 7.3.3
Fri, Apr 15 Dictionary ADT Ch. 8.1
Mon, Apr 18 Binary Search; Hashing Ch. 8.2-8.3
Wed, Apr 20 Binary Search Trees Ch. 9.1
Fri, Apr 22 Binary Search Trees Ch. 9.1
Mon, Apr 25 Multi-way Search Trees
Balanced Search Trees
(2,4) Trees
Ch. 9.3-9.4
Wed, Apr 27
Fri, Apr 29
Fri, May 6 Final Exam (12:00-1:50pm) - info


Michael Goldwasser
CS A220/P126, Spring 2005
Last modified: Saturday, 23 April 2005
Course Home | Homework | Programming | Schedule & Lecture Notes | Submit