Trees are hierarchical data structures that can represent relationships between data items. A tree consists of nodes connected by edges, with one root node at the top. Examples of trees include biological classification trees, file system directories, and HTML page elements.
Key terminology includes nodes, edges, the root node, leaf nodes, paths between nodes, parent and child relationships, subtrees, levels, heights, and depths. Binary trees have at most two child nodes per parent, and can be traversed in preorder, inorder, or postorder to visit the nodes.