Course Content
The text book for this course is
Data Structures Using C and C++, by Yedidyah Langsam,
Moshe J. Augenstein, and Aaron M. Tenenbaum, second edition,
Prentice Hall, 1996.
We cover Chapters 1 to 7.
The links below take you to the listings of the programs
we discussed in class.
Chapter 1 : Introduction to Data Structures
L-1 Numbers and Abstract Data Types
L-2 Composite Data Types
L-3 Classes in C++
Chapter 2 : The Stack
L-4 Stacks: definition and examples
L-5 Implementations of the stack in C
L-6 Infix, Postfix, and Prefix
Chapter 3 : Recursion
L-7 Recursive Algorithms
L-8 Writing recursive programs
L-9 Simulating recursion and efficiency
Chapter 4 : Queues and Lists
L-10 The queue and its representation
L-11 Linked Lists
L-12 Lists in C
L-13 Priority Queues with linked lists
L-14 Simulation
L-15 Other List Structures
L-16 review of chapters 1 to 4
L-17 First midterm: questions
and answers
Chapter 5 : Trees
L-18 Binary Trees
L-19 Representations of Binary Trees
L-20 Representations and traversals
L-21 An example: Huffman trees
L-22 Lists represented by binary trees
L-23 Lists represented by binary trees (continued)
L-24 General Trees
L-25 Nested function calls represented by general trees
L-26 Game trees
Chapter 6 : Sorting
L-27 General background
L-28 Exchange Sorts: bubble sort
L-29 Exchange Sorts: quick sort
L-30 Selection and Tree Sort
L-31 Heapsort
L-32 Insertion sorts
L-33 Merge and radix sort
L-34 Review of chapters 5 and 6
L-35 Second midterm
Chapter 7 : Searching
L-36 Basic search techniques
L-37 Tree Searching
L-38 Tree Searching (continued)
L-39 Multiway Search Trees
L-40 B-Trees
L-41 Hashing
Review
L-42 Review of chapters 1 to 4
L-43 Review of chapters 5 and 6
L-44 Review of chapter 7