Definition: (1) A data structure that is partially composed of other instances of the data structure. For instance, a tree is composed of smaller trees (subtrees) and leaf nodes, and a list may have other lists as elements. (2) An algorithm in which functions might call themselves. For instance, quicksort or heapify.
See also recursion.
Note: Infinite data structures may be represented by having a tree include (point back to) itself recursively, a list include itself, etc. Recursive data structures are often best handled with a recursive algorithm, or an algorithm using recursion.
See the entry at recursion for links, explanations, exercises, cross references, etc.
If you have suggestions, corrections, or comments, please get in touch with Paul Black.
Entry modified 17 December 2004.
HTML page formatted Fri Feb 23 10:06:08 2018.
Cite this as:
Paul E. Black, "recursive", in Dictionary of Algorithms and Data Structures [online], Vreda Pieterse and Paul E. Black, eds. 17 December 2004. (accessed TODAY) Available from: https://www.nist.gov/dads/HTML/recursive.html