知识结构

【数据结构】树、二叉树总结(一)

树的基本概念和定义

【数据结构】树、二叉树总结(一)

树的性质(重要)

1. 树中的节点树等于所有节点的度树加1
【数据结构】树、二叉树总结(一)

  • 总度数等于根节点的所有子节点,当n=3,则度为2
  • 总结点数等于度加1

2. 度为m的树第i层最多有 mi1m^{i-1} 个节点
把树每层看做等比数列, 每一层看作一项, 则第1到第i层分别为: a1,a2aia_1, a_2 \dots a_i ;度即为等比梳理的公比q=m, 首项为a1a_1=1(一棵树只有一个根节点);

\because 等比通项公式: an=a1q(n1)a_n = a_1*q^{(n-1)}

\therefore 由上式得 ai=1m(i1)ai=m(i1)a_i = 1 * m^{(i-1)} \Rightarrow a_i=m^{(i-1)},

即第i层的节点数等于m(ii)m^{(i-i)}

3. 高度为h的m叉树, 最多有 mh1m1\frac{m^h-1}{m-1} 个节点
仍把数的每层看作等比数列, 可得到: a1=1,q=m,n=ha_1 = 1 ,q=m , n=h

Sn=a1(1qn)(1q) (q1)\because S_n=\frac{a_1*(1-q^n)}{(1-q)} \ (q\neq 1)

Si=1(1mh)1m=(mh1)(m1)mh1m1\therefore S_i =\frac{1*(1-m^h)}{1-m} =\frac{-(m^h-1)}{-(m-1)} \Rightarrow \frac{m^h-1}{m-1}

4. 具有n个节点的m叉树, 最小高度为 logm(n(m1)+1)\log_{m}(n(m-1)+1) 向上取整.

二叉树

特点:

  • 至多由两个子节点
  • 两个节点有左右之分
  • 节点可以为空
    【数据结构】树、二叉树总结(一)

满二叉树

【数据结构】树、二叉树总结(一)

  • 除叶子节点外每个节点都有两个子节点
  • 只有最后一次有叶子节点,h-1全是父节点
  • 高度为h的满二叉树共有2h12^{h}-1个节点
  • 第i层共有2h12^{h-1}个节点
  • 满二叉树的节点为奇数个, 去掉根为偶数个

完全二叉树

【数据结构】树、二叉树总结(一)

  • 有n(n>2)层的完全二叉树, 叶节点在n和n-1层
  • 按照层序编号, 当in2i\leq\lfloor\frac{n}{2}\rfloor时, i为双亲(父)节点, 否则为叶子节点
  • 完全二叉树的节点树可能为奇树或偶数, 为奇数时最后一个双亲节点无左孩子; 为偶数时有左孩子.(可看上图加以理解)
  • in1i\leq n-1时, 第i层共有2h12^{h-1}个节点

二叉树性质(重要)

1. 非空二叉树的叶子节点数等于度为2的节点数加1, 即 n0=n2+1n_0 = n_2+1
2. 非空二叉树第i层最多有2i12^{i-1}个节点, (i1)(i\geq1).
3. 高度为h的二叉树最多有2h12^h-1个节点(此时为满二叉树), h1h\geq1.
4. 对二叉树进行层序编号

  • 当i>1, 双亲编号为i2\lfloor \frac{i}{2} \rfloor, i为偶数无须向下取整
  • 2in2i\leq n, 节点左孩子编号为2i, 否则无左孩子.
  • 2i+1n2i+1\leq n, 节点右孩子编号为2i+1, 否则无右孩子
  • 节点i所在层次或深度为log2i+1\lfloor \log_2i \rfloor+1

具有n个节点的完全二叉树的高度为log2n+1\lfloor \log_2n \rfloor+1 或者log2(n+1)\lceil\log_2{(n+1)}\rceil

相关文章:

  • 2021-04-07
  • 2021-10-24
  • 2021-04-07
  • 2021-05-11
  • 2021-11-02
  • 2022-12-23
猜你喜欢
  • 2021-09-23
  • 2021-06-03
  • 2021-11-22
  • 2021-12-21
  • 2021-11-10
  • 2021-07-30
  • 2021-10-20
相关资源
相似解决方案