K-ary tree
In graph theory, a k-ary tree is a rooted tree in which each node has no more than k children. It is also sometimes known as a k-way tree, an N-ary tree, or an M-ary tree. A binary tree is the special case where k=2.
Types of k-ary trees
A full k-ary tree is a k-ary tree where within each level every node has either 0 or k children.
A perfect k-ary tree is a full k-ary tree in which all leaf nodes are at the same depth.
A complete k-ary tree is a k-ary tree which is maximally space efficient. It must be completely filled on every level except for the last level. However, if the last level is not complete, then all nodes of the tree must be "as far left as possible".
Properties of k-ary trees
For a k-ary tree with height h, the upper bound for the maximum number of leaves is
.
The height h of a k-ary tree does not include the root node, with a tree containing only a root node having a height of 0.
The total number of nodes in a perfect k-ary tree is
, while the height h is