码迷,mamicode.com
首页 > 其他好文 > 详细

二叉树——求一棵完全二叉树节点的个数

时间:2018-04-26 01:15:36      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:nbsp   str   时间复杂度   树节点   复杂   证明   二叉树的高度   它的   复杂度   

已知一棵完全二叉树, 求其节点的个数
要求: 时间复杂度低于O(N), N为这棵树的节点个数

结论:满二叉树:高度为L,结点个数  2^L  - 1个

先遍历左边界,求出完全二叉树的高度h

然后遍历树的右子树的左边界,看它到没到最后一层,

  如果到了最后一层,那么证明它的左子树是满的,高度是h-1        左子树的结点数2^(h-1) - 1  + 当前节点 + 递归求解 右子树的结点的个数

  如果没到最后一层,那么证明它的右子树是满的,高度是h-2        右子树的结点数2^(h-2) - 1  + 当前节点 + 递归求解 左子树的结点的个数

二叉树——求一棵完全二叉树节点的个数

标签:nbsp   str   时间复杂度   树节点   复杂   证明   二叉树的高度   它的   复杂度   

原文地址:https://www.cnblogs.com/SkyeAngel/p/8947557.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!