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.
We are currently acquiring citations for the work deposited into this collection. We recognize the distribution rights of this item may have been assigned to another entity, other than the author(s) of the work.If you can provide the citation for this work or you think you own the distribution rights to this work please contact the Institutional Repository Administrator at firstname.lastname@example.org