計算二叉樹中葉子結點個數的方法

來源:互聯網
上載者:User

標籤:style   http   color   ar   sp   on   bs   ad   amp   

基礎知識:

1.二叉樹第i層最多有2^(i-1)個結點。

2.深度為k的二叉樹至多有2^k-1個結點。

 

 

一個完全二叉樹有七百個結點,問該二叉樹有多少個葉子結點
根據“二叉樹的第i層至多有2^(i − 1)個結點;深度為k的二叉樹至多有2^k − 1個結點(根結點的深度為1)”這個性質:
因為2^9-1 < 700 < 2^10-1 ,所以這個完全二叉樹的深度是10,前9層是一個滿二叉樹,
這樣的話,前九層的結點就有2^9-1=511個;而第九層的結點數是2^(9-1)=256
所以第十層的葉子結點數是700-511=189個;
現在來算第九層的葉子結點個數。
由於第十層的葉子結點是從第九層延伸的,所以應該去掉第九層中還有子樹的結點。因為第十層有189個,所以應該去掉第九層中的(189+1)/2=95個;
所以,第九層的葉子結點個數是256-95=161,加上第十層有189個,最後結果是350個。

一個有 800 個結點的完全二叉樹,問有_____個葉子結點?

答案:400

計算二叉樹中葉子結點個數的方法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.