Representing Trees of Higher Degree

  • Authors:
  • David Benoit;Erik D. Demaine;J. Ian Munro;Rajeev Raman;Venkatesh Raman;S. Srinivasa Rao

  • Affiliations:
  • Invio Bioinformatics, Inc., 1721 Lower Water St., Halifax, Nova Scotia, B4A 1E6, Canada;MIT Computer Science and Artificial Intelligence Laboratory, 32 Vassar St., Cambridge, MA 02139, USA;School of Computer Science, University of Waterloo, Waterloo, Ontario, N2L 3G1, Canada;Department of Computer Science, University of Leicester, Leicester LE1 7RH, England;Institute of Mathematical Sciences, Chennai 600 113, India;School of Computer Science, University of Waterloo, Waterloo, Ontario, N2L 3G1, Canada

  • Venue:
  • Algorithmica
  • Year:
  • 2005

Quantified Score

Hi-index 0.02

Visualization

Abstract

This paper focuses on space efficient representations of rooted trees that permit basic navigation in constant time. While most of the previous work has focused on binary trees, we turn our attention to trees of higher degree. We consider both cardinal trees (or k-ary tries), where each node has k slots, labelled {1,...,k}, each of which may have a reference to a child, and ordinal trees, where the children of each node are simply ordered. Our representations use a number of bits close to the information theoretic lower bound and support operations in constant time. For ordinal trees we support the operations of finding the degree, parent, ith child, and subtree size. For cardinal trees the structure also supports finding the child labelled i of a given node apart from the ordinal tree operations. These representations also provide a mapping from the n nodes of the tree onto the integers {1, ..., n}, giving unique labels to the nodes of the tree. This labelling can be used to store satellite information with the nodes efficiently.