A **Tree** is an [undirected graph](Types-of-Graphs.md#Undirected%20Graphs) with [no cycles](Types-of-Graphs.md#Trees). Equivalently, we can state that a tree is a *connected graph* with `N` nodes and `N-1` edges. ![](Screen%20Shot%202021-04-15%20at%208.21.10%20AM.png) Some examples of trees include: * Filesystems * Source code and mathematical expression decomposition into abstract syntax trees. * Social hierarchies * Web pages * Data Structures ### [Representing-Trees](Representing-Trees.md) ### [Rooted-Trees](Rooted-Trees.md) ### [Binary Trees](Binary%20Trees.md) ### [Binary Search Trees](Binary%20Search%20Trees.md) ### [Trees and Reinforcement Learning](Trees-and-Reinforcement-Learning.md) --- Date: 20211129 Links to: Tags: References: * [Introduction to tree algorithms](https://www.youtube.com/watch?v=1XC3p2zBK34&list=PLDV1Zeh2NRsDfGc8rbQ0_58oEZQVtvoIc&index=1)