Use of Balanced Trees for Compact Representation of Data

Konstantin V. Shvachko
Program Systems Institute, Pereslavl-Zalessky, Russia
shv@namesys.botik.ru
http://namesys.botik.ru/~shv

The project is supported in part by the
Russian Foundation for Basic Research (grant No. 96-01-01005)

The problem of maintaining dynamic dictionaries is a classical problem of the theory of data structures, which as an essential component is implemented in any practical information system. ``Dynamic dictionary'' means a linearly ordered set of objects, called keys, together with three operations of access to, insertion, and deletion of a key.

Standard methods of solving the problem using balanced trees like AVL-trees and B-trees are mostly intended to maintain keys that have almost the same length, otherwise these data structures can become very inefficient in space. The most general case of dictionaries with variable length keys hasn't been studied systematically in literature. Generalizing the structure of B-trees, and considering new flexible balance conditions for tree nodes a new data structure is developed, which is efficient both in space and time for the general case of variable length keys.

Last update: 10/02/98 by
Konstantin Shvachko: