1. 程式人生 > >完全二叉樹的結點數

完全二叉樹的結點數

完全二叉樹有一個關於結點數的性質:

結點從1開始編號,層序。那麼分每一個結點(編號為i)的左孩子結點是2i,右孩子結點編號是2i+1.

反之,根據孩子結點的編號可以推知父結點的編號:孩子結點編號的一半取整

下面是一個應用的例子:

一棵完全二叉樹有1001個結點。其中葉結點的個數是幾個?

分析:
1001個結點,則最後一個結點的編號是1001,那麼它的父親結點編號是500,注意,這個並不一定是倒數第二層的最後一個結點。
那麼從501號結點開始往後都是葉子結點,因此,葉子結點有501個。

類似的題目:

若一棵二叉樹有699個結點,則該二叉樹葉子結點的個數是:350個。

分析:


699個結點,那麼就意味著最後一個結點的父結點編號是349。
從350號結點開始到最後一個全是葉子結點,因此共有350個葉子結點。