树的基本概念和性质


一、树的定义,表示和术语

树

树的定义与性质

树(Tree)是n( n ≥ 0)个结点构成的有限集合。当n=0时,称为空树;对于任一棵非空树,具备以下性质:

  • 有且只有一个称为根的结点(root);
  • 其余结点可分为m(m>0)个互不相交的有限集T1,T2,…,Tm,其中每个集合本身又是一棵树,这些树称为原来树的“子树(SubTree)”。每个子树的根结点都与root有一条相连的边,root是这些字数根结点的“父结点(Parent)”。
  • 子树是不相交的;
  • 除了根结点外,每个结点有且仅有一个父结点。

树的一些基本术语

  • 结点的度(Degree):一个结点的度是其子树的个数;
  • 树的度:树的所有结点中最大的度数;
  • 叶结点(Leaf):度为0的点;叶结点又称端结点;
  • 父结点(Parent):有子树的结点是其子树的根结点的父结点;
  • 子结点(Child):若A结点时B结点的父结点,则称B结点时A结点的子结点;
  • 兄弟结点(Sibling):具有同意父节点的各结点彼此是兄弟节点。
  • 分支:树中两个相邻节点的连边称为一个分支。
  • 路径和路径长度:从结点n1到nk的路径被定义为一个结点序列,一条路径的长度为这条路径所包含的边(分支)的个数。
  • 祖先节点(Ancestor):沿树根到某一结点路径上的所有结点都是这个结点的祖先结点
  • 子孙结点(Descendant):某一结点的子树中的所有结点是这个结点的子孙;
  • 结点的层次(Level):规定根结点在1层,其他任一结点的层数是其父结点的层数加1;
  • 树的高度(Height):树中所有结点中的最大层次是这棵树的高度(也有把根节点定义成高度为1的);

二、二叉树

二叉树的定义

一棵二叉树T是一个有穷的结点集合。这个集合可以为空,若不为空,则它是由根结点和称为其左子树TL和右子树TR的两个不相交的二叉树组成。

  • 二叉树具体的五种基本形态
    空二叉树、只有根结点的二叉树、只有根结点和左子树的二叉树、只有根结点和右子树的二叉树、具有根结点、左右子树的二叉树。
  • 二叉树除了每个结点至多有两棵子树外,子树有左右顺序之分。

特殊二叉树

二叉树的深度小于结点数N,平均深度是O(根号N)

  1. 斜二叉树(Skewed Binary Tree),又称退化二叉树;
  2. 完美二叉树(Perfect Binary Tree),又称满二叉树 ;
  3. 完全二叉树(Complete Binary Tree)
    一颗深度为 k 的有 n 个结点的二叉树,对树中的结点按从上到下,从左到右的顺序进行编号,如果编号为 i 的结点在二叉树中的位置相同,则这棵二叉树被称为完全二叉树。
    退化二叉树(左),完全二叉树(中)与完美二叉树(右)
    特殊二叉树

二叉树的性质

  1. 在非空二叉树中,第 i 层上至少有2^(i-1)个结点(i ≧ 1);
  2. 深度为 k 的二叉树至多有2^k-1个结点(k ≧ 1);
  3. 对于任何一棵二叉树,若其叶子结点树为N0,度为2的结点数为N2,则N0=N2+1。
    4
    5
    (3)如果2i+1>n;则结点 i 无右子结点,否则,器右子结点编号是2i+1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值