Advertisement

The Tree Abstraction

  • Charles Lins
Part of the Springer Compass International book series (COMPASS)

Abstract

Trees, and especially binary trees, are perhaps the most important of non-linear data structures in computer science. Therefore, considerable attention (in the form of five chapters) is devoted to this topic. Terms applicable to trees and their attributes are defined in §3.1. A sampling of applications and uses for tree data structures is provided in §3.2. The advanced reader may wish to briefly review the first two sections before moving to the operation specifications in §3.3 through §3.5. Readers to whom the tree concept is new may wish to consult any one of the following references for more expansive coverage of the applicable terminology: [2,7,16,24, 26,28, 30].

Keywords

Binary Tree Balance Tree Binary Search Tree Tree Data Structure Tree Traversal 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    G.M. Add’son-Vel’skii and E.M. Landis, An Algorithm for the Organization of Information. Dokl. Akad. Nauk U.S.S.R., Vol. 146 (2), (1962) pp. 263–266.Google Scholar
  2. [2]
    A.V. Aho, J.E. Hopcroft, and J.D. Ullman, Data Structures and Algorithms, Addison-Wesley, Reading, MA 1983.MATHGoogle Scholar
  3. [3]
    A.V. Aho, R. Sethi, and J.D. Ullman, Compilers Principles, Techniques and Tools, Addison-Wesley, Reading, MA 1986.Google Scholar
  4. [4]
    J.L. Baer and B. Schwab, A Comparison of Tree-Balancing Algorithms. Communications of the ACM, Vol. 20 (5), (May 1977) pp. 322–330.CrossRefGoogle Scholar
  5. [5]
    J.L. Baer, Weight-Balanced Trees. Proceedings ACM-NCC, 44 (1975), pp. 467–472.Google Scholar
  6. [6]
    J.L. Bentley, Multidimensional Binary Search Trees used for Associative Searching. Communications of the ACM, Vol. 18 (9), (Sept. 1975) pp. 509–517.MathSciNetMATHCrossRefGoogle Scholar
  7. [7]
    G. Booch, Software Components with Ada Structures, Tools, and Subsystems, Benjamin/Cummings, Menlo Park, CA 1987.Google Scholar
  8. [8]
    H. Chang and S.S. Iyengar, Efficient Algorithms to Globally Balance a Binary Search Tree. Communications of the ACM, Vol. 27 (7), (Jul. 1984) pp. 695–702.CrossRefGoogle Scholar
  9. [9]
    K. Christian, A Guide to Modula-2, Springer-Verlag, New York, NY 1986.MATHGoogle Scholar
  10. [10]
    A.C. Day, Balancing a Binary Tree. Computer Journal, Vol. 19 (4), (Nov. 1976) pp. 360–361.CrossRefGoogle Scholar
  11. [11]
    T.E. Gerasch, An Insertion Algorithm for a Minimal Internal Path Length Binary Search Tree. Communications of the ACM, Vol. 31 (5), (May 1988) pp. 579–585.CrossRefGoogle Scholar
  12. [12]
    G.H. Gonnet, Balancing Binary Trees by Internal Path Reduction. Communications of the ACM, Vol. 26 (12), (Dec. 1983) pp. 1074–1081.MathSciNetMATHCrossRefGoogle Scholar
  13. [13]
    G.H. Gonnet, Handbook of A Igorithms and Data Structures, Addison-Wesley, London, England 1984.Google Scholar
  14. [14]
    P. Grogono, Programming in Pascal, Addison-Wesley, Reading, MA 1979.Google Scholar
  15. [15]
    E. Knepley and R. Piatt, Modula-2 Programming, Res ton Publishing Co., Reston, VA 1985.Google Scholar
  16. [16]
    D.E. Knuth, The Art of Computer Programming, Volume 1, Fundamental Algorithms, Addison-Wesley, Reading, MA 1973.Google Scholar
  17. [17]
    D.E. Knuth, The Art of Computer Programming, Volume 3, Sorting and Searching, Addison-Wesley, Reading, MA 1973.Google Scholar
  18. [18]
    W.A. Martin and D.N. Ness, Optimal Binary Trees Grown with a Sorting Algorithm. Communications of the ACM, Vol. 15 (2), (Feb. 1972) pp. 88–93.MATHCrossRefGoogle Scholar
  19. [19]
    J.B. Moore and K.N. McKay, Modula-2 Text and Reference, Prentice-Hall, Englewood Cliffs, NJ 1987.Google Scholar
  20. [20]
    B. Liskov and J. Guttag, Abstraction and Specification in Program Development, The MIT Press, Cambridge, MA 1986.MATHGoogle Scholar
  21. [21]
    J. Nievergelt and E.M. Reingold, Binary Search Trees of Bounded Balance. SIAM J. Computing, Vol. 2 (1), (1973) pp. 33–43.MathSciNetMATHCrossRefGoogle Scholar
  22. [22]
    A. Sale, Modula-2 Discipline and Design, Addison-Wesley, Reading, MA 1986.Google Scholar
  23. [23]
    R. Sedgewick, Algorithms, Addison-Wesley, Reading, MA 1983.MATHGoogle Scholar
  24. [24]
    T.A. Standish, Data Structure Techniques, Addison-Wesley, Reading, MA 1980.Google Scholar
  25. [25]
    Q.F. Stout and B.L. Warren, Tree Rebalancing in Optimal Time and Space. Communications of the ACM, Vol. 29 (9), (Sept. 1986) pp. 902–908.CrossRefGoogle Scholar
  26. [26]
    A.M. Tenenbaum and M.J. Augenstein, Data Structures Using Pascal, Prentice- Hall, Englewood Cliffs, NJ 1981.MATHGoogle Scholar
  27. [27]
    R.S. Wiener and G. Ford, Modula-2 A Software Development Approach, John Wiley & Sons, New York, NY 1985.Google Scholar
  28. [28]
    R.S. Wiener and R.F. Sincovec, Data Structures Using Modula-2, John Wiley & Sons, New York, NY 1986.Google Scholar
  29. [29]
    R.S. Wiener, Path Length of Unbalanced Binary Trees - A Modula-2 Simulation. Journal of Pascal, Ada & Modula-2, Vol. 6 (5), (Sept./Oct. 1987 ) pp. 5–9.Google Scholar
  30. [30]
    N. Wirth, Algorithms and Data Structures, Prentice-Hall, Englewood Cliffs, NJ 1986.MATHGoogle Scholar

Copyright information

© Springer-Verlag New York Inc. 1989

Authors and Affiliations

  • Charles Lins
    • 1
  1. 1.Apple Computer, Inc.CupertinoUSA

Personalised recommendations