||This article includes a list of references, but its sources remain unclear because it has insufficient inline citations. (July 2014)|
A tree structure or tree diagram is a way of representing the hierarchical nature of a structure in a graphical form. It is named a "tree structure" because the classic representation resembles a tree, even though the chart is generally upside down compared to an actual tree, with the "root" at the top and the "leaves" at the bottom.
A tree structure is conceptual, and appears in several forms. For a discussion of tree structures in specific fields, see Tree (data structure) for computer science: insofar as it relates to graph theory, see tree (graph theory), or also tree (set theory). Other related pages are listed below.
Terminology and properties
Every finite tree structure has a member that has no superior. This member is called the "root" or root node. The root is the starting node. But the converse is not true: infinite tree structures may or may not have a root node.
The names of relationships between nodes are modeled after family relations. The gender-neutral names "parent" and "child" have largely displaced the older "father" and "son" terminology, although the term "uncle" is still used for other nodes at the same level as the parent.
- A node's "parent" is a node one step higher in the hierarchy (i.e. closer to the root node) and lying on the same branch.
- "Sibling" ("brother" or "sister") nodes share the same parent node.
- A node's "uncles" are siblings of that node's parent.
- A node that is connected to all lower-level nodes is called an "ancestor". The connected lower-level nodes are "descendants" of the ancestor node.
In the example, "encyclopedia" is the parent of "science" and "culture", its children. "Art" and "craft" are siblings, and children of "culture", which is their parent and thus one of their ancestors. Also, "encyclopedia", being the root of the tree, is the ancestor of "science", "culture", "art" and "craft". Finally, "science", "art" and "craft", being leaves, are ancestors of no other node.
Tree structures are used to depict all kinds of taxonomic knowledge, such as family trees, the biological evolutionary tree, the evolutionary tree of a language family, the grammatical structure of a language (a key example being S → NP VP, meaning a sentence is a noun phrase and a verb phrase, with each in turn having other components which have other components), the way web pages are logically ordered in a web site, mathematical trees of integer sets, et cetera.
In a tree structure there is one and only one path from any point to any other point.
Examples of tree structures
- Operating system: directory structure
- Information management: Dewey Decimal System, PSH, this hierarchical bulleted list
- Management: hierarchical organizational structures
- Computer Science:
- Biology: evolutionary tree
- Business: pyramid selling scheme
- Project management: work breakdown structure
- Linguistics (syntax): Phrase structure trees
- Sports: business chess, playoffs brackets
- Mathematics: Von Neumann universe
- Group theory: descendant trees
There are many ways of visually representing tree structures. Almost always, these boil down to variations, or combinations, of a few basic styles:
Classical node-link diagrams, that connect nodes together with line segments.
Layered "icicle" diagrams
Layered "icicle" diagrams that use alignment/adjacency.
Outlines and tree views
A correspondence to nested parentheses was first noticed by Sir Arthur Cayley.
Trees can also be represented radially.
- Kinds of trees
- Dancing trees
- Decision tree
- Left child-right sibling binary tree
- Tree (data structure)
- Tree (graph theory)
- Tree (set theory)
- Related articles
- "What is the Document Object Model?". W3C Architecture domain. Retrieved 2006-12-05.
Identification of some of the basic styles of tree structures can be found in:
- Jacques Bertin, Sémiologie graphique, 1967, Éditions Gauthier-Villars, Paris (2nd edition 1973, English translation 1983);
- Donald E. Knuth, The Art of Computer Programming, Volume I: Fundamental Algorithms, 1968, Addison-Wesley, pp. 309–310;
- Brian Johnson and Ben Shneiderman, Tree-maps: A space-filling approach to the visualization of hierarchical information structures, in Proceedings of IEEE Visualization (VIS), 1991, pp. 284–291;
- Peter Eades, Tao Lin, and Xuemin Lin, Two Tree Drawing Conventions, International Journal of Computational Geometry and Applications, 1993, volume 3, number 2, pp. 133–153.
|Wikimedia Commons has media related to Tree diagram.|