一个完全二叉树中,如果叶子结点的个数为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楼的追问。
这个周末结贴,大家可以讨论一下