CS
3050

Spring 2007

Study Guide for Quiz 4

Spring 2007

Study Guide for Quiz 4

The quiz will cover chapters 8, 9 and definition and motivation for B+ Trees. As part of your review process, I recommend you study:

- Notes from class
- Reread book chapters
- Homework assignments

- Lab assignments

Chapter 8: Cosequential Processing and the Sorting of Large Files (Sections 8.1, 8.3, 8.5)

- Know what cosequential processing is and why we do it.
- Know the algorithms, assumptions and issues involved in matching or merging two lists.
- Know how the merge algorithm can be extended to k lists; understand the implementation trade-offs between find and move and the "big O" time analysis we did in class.
- Know the algorithm to efficiently sort files too large to fit into memory using merge.
- Understand the analysis of the algorithm to efficiently sort large files using merge: where the bottlenecks are and what might be done to avoid them.
- Understand how varying ther parameters may affect the algorithm to efficiently sort large files using merge.

Chapter 9: Multilevel Indexing and B-Trees

1. Know the statement of the problem we are trying to solve and what our goals are.

2. Before arriving at B-Trees we tried four methods to solve our problem: know what they were, why we tried them and why they failed.

- BST
- AVL Trees
- Paged Binary Trees
- Multilevel Indexing

4. Know the formula for worst-case depth of a B-Tree, how to drive it and how to use it

5. Know the algorithms for find leaf, insert, and delete in a B-Tree.

- Be able to work examples using these algorithms.
- Be able to identify the need for, and to state, appropriate policies to implement these algorithms

- Redistribution during insertion
- B* Trees
- Virtual B-Trees
- B+ Trees (see below)

B+ Trees

- Know what B+ Trees are and the motivation for using them.