二叉树度为 0 的结点个数等于度为 2 的结点个数加 1

二叉树结点的度(分支度)指该节点引出的边数(节点下面的边)。二叉树结点有 3 种可能的度:

  • 度为 0,为叶子节点。
  • 度为 1,只有左子树或者右子树的节点。
  • 度为 2,有左右节点的节点。

用 n0,n1,n2 表示二叉树中三种结点的数量:

  • n0:度为 0 的结点即叶子节点的数量。
  • n1:度为 1 的结点即只有左子树或者右子树的节点的数量,对于完全二叉树,n1 只可能是 0 或 1,总节点数为偶数时有一个节点只有左子树。
  • n2:度为 2 的结点即有左右节点的节点的数量。

证明:

  • 假设树的节点数是 n,那么 n = n0 + n1 + n2;
  • 考虑一下结点的入度(节点上面的边),除了根节点,每个节点都有一条入边,所以边数为 n-1;同时边的数量为 2*n2 + n1;
  • 结合上面两个推导:n = n0 + n1 + n2 = 2*n2 + n1 + 1,化简得到 n0 = n2 + 1

ref:完全二叉树的叶子节点数

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章