数列问题:一个完全二叉树中,如果叶子结点的个数为n。则这颗二叉树一共有几个结点
一个完全二叉树中,如果叶子结点的个数为n。则这颗二叉树一共有几个结点http://baike.baidu.com/view/427107.htm完全二叉树就是结点的深度相...
一个完全二叉树中,如果叶子结点的个数为n。则这颗二叉树一共有几个结点
http://baike.baidu.com/view/427107.htm
完全二叉树就是结点的深度相差不超过1。
叶子结点就是没有孩子的结点。
经验证,coolisen的答案是正确的。
对于争论。我以为,树是特殊的图,没必要在概念上过于纠结。
我感觉应该是2n-(!(n&1)) (&是二进制按位取与,!是逻辑非)
我问这个问题,是因为当时我想用完全二叉树解决这样的问题:
http://zhidao.baidu.com/question/434826384.html?quesup2&oldq=1
后来发现,建成完全二叉树,程序会很不好处理。
应该建成满2叉树,让叶子节点数为2^(int)log(2,n),多余的用0补齐,这样就完美的解决这个问题了。思路见2楼的追问。
这个周末结贴,大家可以讨论一下 展开
http://baike.baidu.com/view/427107.htm
完全二叉树就是结点的深度相差不超过1。
叶子结点就是没有孩子的结点。
经验证,coolisen的答案是正确的。
对于争论。我以为,树是特殊的图,没必要在概念上过于纠结。
我感觉应该是2n-(!(n&1)) (&是二进制按位取与,!是逻辑非)
我问这个问题,是因为当时我想用完全二叉树解决这样的问题:
http://zhidao.baidu.com/question/434826384.html?quesup2&oldq=1
后来发现,建成完全二叉树,程序会很不好处理。
应该建成满2叉树,让叶子节点数为2^(int)log(2,n),多余的用0补齐,这样就完美的解决这个问题了。思路见2楼的追问。
这个周末结贴,大家可以讨论一下 展开
2个回答
展开全部
解:因是完全二叉树,故度数只能是1,2,3.设度数为2的结点为m,则全部结点数为m+n+1
所有度数之和=3m+n+2=边的2倍,另一方面,树中边的数目=结点数-1
所以:3m+n+2=2(m+n),解得:m=n-2,故全部结点数为2n-1
重新看了上述解答,感觉没错。完全二叉树的概念保证了每个点的出度为2或者0,为2时,该点的度数为3,为0时度数为1,就是叶子。
既然楼主就这样讲了,就再不说什么了,对完全二叉树的概念的描述,很多书上有定义的。
所有度数之和=3m+n+2=边的2倍,另一方面,树中边的数目=结点数-1
所以:3m+n+2=2(m+n),解得:m=n-2,故全部结点数为2n-1
重新看了上述解答,感觉没错。完全二叉树的概念保证了每个点的出度为2或者0,为2时,该点的度数为3,为0时度数为1,就是叶子。
既然楼主就这样讲了,就再不说什么了,对完全二叉树的概念的描述,很多书上有定义的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询