Tree

树的定义

n(n>=0)个结点构成的有限集合,
当n=0时,称为空树;
对于任一非空树,它具备以下性质:
  • 树中有一个称为 (root) 的特殊结点,用r表示;
  • 其余结点可以分为m(m>0)个互不相交的有限集T1,T2…Tm,其中每个集合本身又是一棵树,称为原来树的子树(SubTree)

基本术语

  • 结点的度(Degree):结点的子树个数
  • 树的度:树的所有结点中最大的度数
  • 叶结点(Leaf):度为0的结点
  • 父结点(Parent):有子树的结点是其子树的根结点的父结点
  • 子结点(Child):若A结点是B结点的父结点,则称B结点是A结点的子结点;子结点也称孩子结点
  • 兄弟结点(Sibling):具有同一父结点的各结点彼此是兄弟结点
  • 路径和路径长度:从结点n1到nk的路径为一 个结点序列n1 , n2 ,… , nk , ni是 ni+1的父结 点。路径所包含边的个数为路径的长度
  • 祖先结点(Ancestor):沿树根到某一结点路 径上的所有结点都是这个结点的祖先结点。
  • 子孙结点(Descendant):某一结点的子树 中的所有结点是这个结点的子孙。
  • 结点的层次(Level):规定根结点在1层, 其它任一结点的层数是其父结点的层数加1。
  • 树的深度(Depth):树中所有结点中的最大层次是这棵树的深度。

树的表示

儿子-兄弟表示法

表示出的形式是二叉树
notion image
notion image
notion image
notion image
 
Searching
Binary Tree
Binary Search Tree
Balanced Binary Tree