Midterm Study Guide
CSE 326: Data Structures
Spring 2007
Midterm Exam, Friday, April 27, 2007
- Exam policies
- Closed book, closed
notes. Calculators allowed (not sure they will
be useful for anything but you may use one if desired)
- The exam begins
promptly at 12:30 and ends at 1:20
- Topics covered
- Linked lists. Simple linked lists, doubly linked lists, circularly
linked lists.
- Stacks and Queues,
array and list implementations.
- Recursion. Designing algorithms recursively.
- Asymptotic analysis,
Big-O. Worst case, upper bound, lower bound, analyzing
loops, recurrences, amortized complexity.
- Trees –
definitions
- Binary Heaps, D-heaps
- Findmin, Deletemin,
Insert. Additional operations of increase, decrease, buildheap.
- Leftist Heaps and Skew
Heaps - Findmin, Deletemin,
Insert. Additional operations of merge,
increase, decrease
- Binomial Queues - Findmin, Deletemin, Insert. Additional operations of merge, increase, decrease.
- Dictionary ADT
- Binary search trees
– Inorder, preorder, postorder
traversals, insert, delete, find.
- AVL trees - Single and
double rotations, insert, find.
- Study suggestions
- Do concrete problems
from the book and re-work problems from lecture, section, and HW. Suggestions of more problems from the book: Chapter
2: 2.6, 2.10. Chapter 3: 3.21, 3.22, 3.23 (a). Chapter 4: 4.1, 4.2, 4.8, 4.9, 4.19, 4.22, 4.25. Chapter 6: 6.2, 6.3, 6.30.
- Practice all the
operations in binary heaps, leftist and skew heaps, binomial queues,
binary search trees, AVL trees.
- Practice analysis of
algorithms.
- All material from
lecture up through AVL trees is fair game. This material corresponds to: Chapters: 1, 2, 3, 4 (not section 4.5 on Splay
trees or 4.7 on B-trees), and 6.