树的基本性质理论推导

如果大家有很长时间没有看算法了,不妨从二叉树这块开始往起捡。因为其上承接线性表,下联系图论只是,掌握好树这块的理论知识具有重要意义。我将给大家整理下易忘的树与二叉树理论推导。


  • 具有n个节点的m叉树的最小高度为 (logn(m1)+1m)

理论推导:要求最小高度,则最底层的上面节点应是满m叉树,算上底层节点,其可以是一颗完全m叉树,关于满m(2)叉树,大家有两点需要记住:
1. 满m叉树中,第i层的节点数为 mi1
2. 满2叉树中,第i层以上(含i层)的节点总数为 2i1 ,对于满m叉树,大家可以自己推一下(等比数列),各层节点加起来就是节点总数。

m叉树

这样,设含有n个节点的m叉树的完全m叉树高度为h,则:
1+m1+m2++mh2<n1+m1+m2++mh2+mh1

不等式两边是等比数列,根据等比数列求和公式:
Sn=a1anq1q=a1(1qn)1qq1

有: 1mh11m<n1mh1m ,整理得:

mh1<n(1m)+1)mh ,两边取对数有:

h1<logn(1m)+1mh ,那么h应该向上取整, h=(logn(m1)+1m) ,得证。

  • 高度为h的m叉树至多有 (mh1)m1 个节点

    理论证明:仍然从每层节点个数入手,所有层加起来就是总的节点数。

    第h层节点数: mh1

    第h-1层节点数: mh2

    第2层节点数:m

    第1层节点数:1

    把所有层节点数加起来:

    sum=1+m1++mh2+mh1=mh1m1

  • 树中节点数等于所有节点的度数加1

    证明:节点的度相当于该节点拥有的子树的棵数(分支数),也即该节点拥有的孩子节点的数量。而在树所有的节点中,只有根节点不能做孩子结点,因此节点度数和节点数差1。(本质上就在找孩子节点,多少个孩子节点就有度数就为多少,只有根不能作为孩子节点)
    这里写图片描述

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值