leetcode111. 二叉树的最小深度
生活随笔
收集整理的這篇文章主要介紹了
leetcode111. 二叉树的最小深度
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
給定一個二叉樹,找出其最小深度。
最小深度是從根節(jié)點到最近葉子節(jié)點的最短路徑上的節(jié)點數(shù)量。
說明:?葉子節(jié)點是指沒有子節(jié)點的節(jié)點。
示例:
給定二叉樹?[3,9,20,null,null,15,7],
? ? 3
? ?/ \
? 9 ?20
? ? / ?\
? ?15 ? 7
返回它的最小深度 ?2.
思路:見代碼
/*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode(int x) { val = x; }* }*/ class Solution {public int minDepth(TreeNode root) {if(root == null) return 0;//左孩子和有孩子都為空的情況,說明到達(dá)了葉子節(jié)點,返回1if(root.left == null && root.right == null) return 1;//左孩子和由孩子其中一個為空,返回較大深度 int m1 = minDepth(root.left);int m2 = minDepth(root.right);//其中一個節(jié)點為空,說明有一個必為0,所以可以返回m1 + m2 + 1;if(root.left == null || root.right == null) return m1 + m2 + 1;//左右孩子都不為空,返回最小深度+1return Math.min(m1,m2) + 1; } }?
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的leetcode111. 二叉树的最小深度的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一文搞懂 什么是CPU上下文?为什么要切
- 下一篇: leetcode647 回文子串