关于完整的二叉树

时间:2010-06-25 10:36:58

标签: binary-tree

这可能是完整二叉树中的节点只有一个子节点吗? 感谢

这可以是一个完整的二叉树吗?

        23
       /  \
      12  15
     /  \   
    9   11 
   / \    \
  10  5    13  

4 个答案:

答案 0 :(得分:6)

好的,首先要在完美和完整的二叉树之间做出区分。在完美的二叉树中,每个节点都有两个子节点(如果不是叶子)或没有子节点(如果是叶子)。因此,级别N的完美二叉树具有完全2^(N + 1) - 1个节点。但是如果我们谈论完整的二叉树 - 这意味着每个级别,除了最后一个级别,并且最后一级可能不满。同样在完整的二叉树中,必须从左到右填充最后一级节点。

因此,如果你谈论完美的二叉树,那是不可能的。但如果你的意思是完整的二叉树,那么只能生一个孩子。

答案 1 :(得分:3)

我想说有可能:

     *
    / \
   /   \
  *     x
 / \   / 
*   * *

这是一个

  

其中的二叉树   每个级别,除了最后一级,   完全填满,所有节点   尽可能地离开

节点x只有一个孩子。

答案 2 :(得分:0)

引用维基百科:

  

完整的二叉树是二进制   每个级别的树,除了   可能是最后一个,完全是   填充,所有节点都是最左边的   尽可能。

这意味着没有。

答案 3 :(得分:0)

来自其他答案:

  

完整的二叉树是一个二叉树,其中每个级别(除了可能是最后一个级别)完全填充,并且所有节点都尽可能远。

        23
       /  \
      12  15
     /  \   
    9   11     <- not the last level, but not completely filled!
   / \    \
  10  5    13  <- last level: not completely filled, but that's okay

根据这个定义,这个示例树不完整。