【问题标题】:How can I proof that a complete binary tree has \lceil n/2 \rceil leaves?如何证明一棵完整的二叉树有 \lceil n/2 \rceil 叶?
【发布时间】:2012-06-02 05:32:55
【问题描述】:

给定一棵具有 n 个节点的完全二叉树。我试图证明一个完整的二叉树正好有 \lceil n/2 \rceil 叶。 我想我可以通过归纳来做到这一点。

对于 h(t)=0,树是空的。因此,没有叶子,因此声明适用于一棵空树。

对于 h(t)=1,树有 1 个节点,这也是一个叶子,所以该声明成立。 在这里我被卡住了,我不知道选择什么作为归纳假设以及如何进行归纳步骤。

【问题讨论】:

    标签: binary-search-tree


    【解决方案1】:

    如果根节点不是叶子,那么它有两个子树,您可以递归求解。每个子树的叶子比非叶子节点多一个,因此当您将根(它的非叶子节点比叶子节点多一个!)和两个子树一起添加时,您会比非叶子节点多一个叶子,或者换句话说,叶子节点占节点数量的一半,四舍五入。

    【讨论】:

      猜你喜欢
      • 2015-12-20
      • 1970-01-01
      • 2017-09-30
      • 1970-01-01
      • 2021-08-24
      • 2018-01-30
      • 2018-10-24
      • 1970-01-01
      相关资源
      最近更新 更多