BONSAI: A COMPACT REPRESENTATION OF TREES
Date
1991-10-01
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
This paper shows how trees can be stored in a very compact
form, called "Bonsai", using hash tables. A method is described that
is suitable for large trees that grow monotonically within a predefined
maximum size limit.
Using it, pointers in any tree can be represented within $6 + \s-3 left ceiling
\s+3 log sub 2 n \s-3 right ceiling \s+3 $
bits per node where \fIn\fR is the maximum number of children a node can have.
We first describe a general way of storing trees in hash tables, and then
introduce the idea of compact hashing which underlies the Bonsai structure.
These two techniques are combined to give a compact representation of trees,
and a practical methodology is set out to permit the design of these
structures. The new representation is compared with two conventional tree
implementations in terms of the storage required per node. Examples of
programs that must store large trees within a strict maximum size include
those that operate on trie structures derived from natural language text.
We describe how the Bonsai technique has been applied to the trees that
arise in text compression and adaptive prediction, and include a discussion
of the design parameters that work well in practice.
Description
Keywords
Computer Science