Urgent Clarifications -- Go here every time you visit the page to find out project critical clarifications.

Project Specification -- Go here to read the project description.

Source Files -- Go here for the template code for the project. Everything has been fairly well tested and should work w/o any glitches whatsoever. Be VERY careful that bytes are SIGNED in java and this can cause major problems. All the functions you will be implementing are in AdaptiveTree.java, although you will need to study all of the other files (Except the bit/filebit reader/writer classes, those just handle IO) in order to understand what you have to do for the Adaptive Tree. There are 10 functions total you have to implement, good luck!

Vitter's Paper -- Go here to read Vitter's paper.

Notes on implicit numbering -- Here are some notes from relating to the array representation of a tree. The scan is of writing in pencil so it's a little light and was unreadable at 100-200% zoom do to the fact that acrobat doesn't always blend well. However, it's quite readable at 300-400% zoom and should look fine when you print it. Notice, each level in the tree has lower numbers, and they are always increasing left to right. Also notice that the name of an internal node relates to the addresses of its children. #n node has children at locations 2n and 2n+1.

Examples -- Here are some examples of what your aproximate (exact I hope) output should look like (notice Rev adaptive produces larger files because of the inefficient header).