[C/C++]LeetCode 簡單篇之二叉樹的最小深度

思路

對根節點及它所直接連的子節點全部情況分析一邊,以此遞歸完畢。

代碼

int minDepth(TreeNode* root)
{
        if(!root) return 0;
        int left=minDepth(root->left);
        int right=minDepth(root->right);
        if(!left) return right+1;
        if(!right) return left+1;
        return min(left,right)+1;//利用三目運算符也可
}

題目補充

給定一個二叉樹,找出其最小深度。
最小深度是從根節點到最近葉子節點的最短路徑上的節點數量。
說明: 葉子節點是指沒有子節點的節點。

示例:
給定二叉樹 [3,9,20,null,null,15,7],

    3
   / \
  9  20
    /  \
   15   7

返回它的最小深度 2.

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