Leaf node

From Wikipedia, the free encyclopedia

9, 14, 19, 67 and 76 are leaf nodes.
9, 14, 19, 67 and 76 are leaf nodes.

In computer science, a leaf node is a node of a tree data structure that has zero child nodes. Often, leaf nodes are the nodes farthest from the root node. In the graph theory tree, a leaf node is a vertex of degree 1 other than the root (except when the tree has only one vertex; then the root, too, is a leaf). Every tree has at least one leaf.

A non-leaf node is called an internal node. Some trees only store data in internal nodes, though this affects the dynamics of storing data in the tree. For example, with empty leaves, one can store an empty tree with a single leaf node. However with leaves that can store data, it is impossible to store an empty tree unless one stores some kind of marker data in the leaf that signifies that the leaf is to be empty (and thus the tree to be empty as well).

Conversely, some trees only store data in the leaf nodes, and use the internal nodes to hold other metadata, such as the range of values in the subtree rooted at that node. This type of tree is useful for range queries.


[edit] Genetic programming

In tree based genetic programming a leaf (also called a terminal) is the outermost part of a program tree. In contrast to functions or internal nodes, leaves have no arguments. In many cases in GP leaves are the inputs to the program. [1]

[edit] See also