# Tree Data Structure

A Tree Data Structure is an abstract data type that is based on a hierarchical tree structure.

**Example(s):**- a Binary Tree.
- a k-d Tree,
- an Octree,
- a Quadtree,
- an Interval Tree,
- a Segment Tree.
- …

**Counter-Example(s):**- an Array,
- a Linked List,
- a Tuple,
- an Union Data Structure,
- a Graph Data Structure,
- a Class Data Structure,
- a Regression Tree,
- a Classification Tree.

**See:**Digraphs, Trie, Abstract Data Type, Data Structure, Tree Structure, Subtrees, Vertex (Graph Theory), Recursion, Node (Computer Science), Ordered Tree, Adjacency List.

## References

### 2018

- (Wikipedia, 2018) ⇒ https://en.wikipedia.org/wiki/Tree_(data_structure) Retrieved:2018-8-5.
- In computer science, a
**tree**is a widely used abstract data type (ADT)— or data structure implementing this ADT — that simulates a hierarchical tree structure, with a root value and subtrees of children with a parent node, represented as a set of linked nodes.A tree data structure can be defined recursively (locally) as a collection of nodes (starting at a root node), where each node is a data structure consisting of a value, together with a list of references to nodes (the "children"), with the constraints that no reference is duplicated, and none points to the root.

Alternatively, a tree can be defined abstractly as a whole (globally) as an ordered tree, with a value assigned to each node. Both these perspectives are useful: while a tree can be analyzed mathematically as a whole, when actually represented as a data structure it is usually represented and worked with separately by node (rather than as a set of nodes and an adjacency list of edges between nodes, as one may represent a digraph, for instance). For example, looking at a tree as a whole, one can talk about "the parent node" of a given node, but in general as a data structure a given node only contains the list of its children, but does not contain a reference to its parent (if any).

- In computer science, a

### 2018

- https://docs.python.org/3/library/xml.etree.elementtree.html
- QUOTE: ... XML is an inherently hierarchical data format, and the most natural way to represent it is with a tree. ET has two classes for this purpose - ElementTree represents the whole XML document as a tree, and Element represents a single node in this tree. ...