Optimal Integer Alphabetic Trees in Linear Time

We show that optimal alphabetic binary trees can be constructed in O(n) time if the elements of the initial sequence are drawn from a domain that can be sorted in linear time. We describe a [6] hybrid algorithm that combines the bottom-up approach of the original Hu-Tucker algorithm with the top-down approach of Larmore and Przytycka’s Cartesian tree algorithms. The hybrid algorithm demonstrates the computational equivalence of sorting and level tree construction.

[1]  Adriano M. Garsia,et al.  A New Algorithm for Minimum Cost Binary Trees , 1977, SIAM J. Comput..

[2]  Prakash V. Ramanan Testing the Optimality of Alphabetic Trees , 1992, Theor. Comput. Sci..

[3]  E. F. Moore,et al.  Variable-length binary encodings , 1959 .

[4]  Robert E. Tarjan,et al.  A linear-time algorithm for a special case of disjoint set union , 1983, J. Comput. Syst. Sci..

[5]  Donald E. Knuth,et al.  Optimum binary search trees , 1971, Acta Informatica.

[6]  Lawrence L. Larmore,et al.  The Optimal Alphabetic Tree Problem Revisited , 1994, ICALP.

[7]  Wojciech Rytter,et al.  Correctness of Constructing Optimal Alphabetic Trees Revisited , 1997, Theor. Comput. Sci..

[8]  David A. Huffman,et al.  A method for the construction of minimum-redundancy codes , 1952, Proceedings of the IRE.

[9]  Michel Deza,et al.  Combinatorics and Computer Science , 1996, Lecture Notes in Computer Science.

[10]  T. C. Hu,et al.  Combinatorial algorithms , 1982 .

[11]  T. C. Hu,et al.  Optimal Computer Search Trees and Variable-Length Alphabetical Codes , 1971 .

[12]  Julia Abrahams,et al.  Code and parse tree for lossless source encoding , 2001, Commun. Inf. Syst..

[13]  Robert E. Tarjan,et al.  Scaling and related techniques for geometry problems , 1984, STOC '84.

[14]  Brendan Mumey,et al.  Upper and lower bounds on constructing alphabetic binary trees , 1993, SODA '93.

[15]  J. David Morgenthaler,et al.  Optimum Alphabetic Binary Trees , 1995, Combinatorics and Computer Science.

[16]  T. C. Hu A New Proof of the T-C Algorithm , 1973 .