c#二叉树 取叶子节点个数_二叉树的最小深度+完全二叉树的节点个数
生活随笔
收集整理的這篇文章主要介紹了
c#二叉树 取叶子节点个数_二叉树的最小深度+完全二叉树的节点个数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
二叉樹的最小深度
題目:給定一個二叉樹,找出其最小深度。
最小深度是從根節點到最近葉子節點的最短路徑上的節點數量。
說明:葉子節點是指沒有子節點的節點。
示例 1:
輸入:root = [3,9,20,null,null,15,7]
輸出:2
示例 2:
輸入:root = [2,null,3,null,4,null,5,null,6]
輸出:5
提示:
樹中節點數的范圍在 [0, 105] 內
-1000 <= Node.val <= 1000
解題思路
我們用層次遍歷來找到從第二層開始的最低層的葉子節點就能得到二叉樹的最小深度。只有當左右孩子都為空的時候,才說明遍歷的最低點了。如果其中一個孩子為空則不是最低點。
代碼展示
代碼如下:
class完全二叉樹的節點個數
題目:給出一個完全二叉樹,求出該樹的節點個數。
說明:
完全二叉樹的定義如下:在完全二叉樹中,除了最底層節點可能沒填滿外,其余每層節點數都達到最大值,并且最下面一層的節點都集中在該層最左邊的若干位置。若最底層為第 h 層,則該層包含 1~ 2h 個節點。
示例:
解題思路
同樣這題我們可以通過層次遍歷來記錄二叉樹節點個數,每從隊列中push一個節點就讓num++,最后得到二叉樹節點總個數。
代碼展示
代碼如下:
class 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的c#二叉树 取叶子节点个数_二叉树的最小深度+完全二叉树的节点个数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 摩托罗拉 moto Razr+ 2023
- 下一篇: php winform通信,C# Win