CISC 3130 - Data Structures

Spring 2011


[Announcements] [General Information] [Syllabus] [Homeworks] [Additional Material] [Schedule]

Schedule

The following schedule is tentative and may be adjusted depending on the circumstances. It should serve as a rough guide of what you'll see in this class.
Lecture No. Date Topic Comments
11/31Introduction, Administration, C++ revision: pointers, dynamic memory allocation notes
22/2Dynamic Array I: A motivating problem
32/7Dynamic Array II: Designing a data structureCode (try to see why the usearray_bad.cpp program does not work)
42/9Dynamic Array III: Overloading [] and <<, copy constructor and destructorCode
52/14Dynamic Array IV: 2-Dimensional arraysCode
62/16Stacks and Queues I: Definitions and ADT viewCode
72/28Stacks II: Implementation using an array, performance issuesCode
83/1Linked Lists I: Overview, constructing listsCode
9 3/6Linked Lists II: More operations on listsCode
10 3/8Linked Lists III: Other kinds of lists, doubly-linked lists, circular listsCode
11 3/13 Revision
12 3/15Midterm I (Classes 1-10)
13 3/20Sorting I: Bubblesort, Selection sortCode
14 3/22Sorting II: Insertion sort, Mergesort, algorithm analysis and engineeringCode
15 3/27Sorting III: Mergesort analysis, recursive algorithms, binary search
16 3/29Sorting IV: Quicksort Code
174/3Sorting V: Quicksort analysis, review
184/5Binary Trees I: Heapsort, priority queuesCode
194/10Binary Trees II: Definitions, tree traversals
204/12Binary Trees III: Balanced search trees
214/17Binary Trees IV: More BSTs
224/19Graphs I: Definition and applications
234/24Graphs II: Implementation(s), Graph traversal
244/26Revision
255/1Midterm II ( Noncumulative, Classes 13-23)
265/3 Templates, STL classesCode
275/8 More STL classes, hashing
285/10 Final Revision
295/15 Final (Cumulative)