[leetcode 브러시 노트] Minimum Depth of Binary Tree

4025 단어 LeetCode
Given a binary tree, find its minimum depth.
The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.
 
문제: 귀속 해결, 개인 변수minDep로 최소한의 깊이를 저장하고 잎 노드를 훑어볼 때마다 업데이트가 필요한지 확인합니다.
코드는 다음과 같습니다.
 1 /**

 2  * Definition for binary tree

 3  * public class TreeNode {

 4  *     int val;

 5  *     TreeNode left;

 6  *     TreeNode right;

 7  *     TreeNode(int x) { val = x; }

 8  * }

 9  */

10 public class Solution {

11     private int minDep = Integer.MAX_VALUE;

12     public void minDepthRecur(TreeNode root,int depth){

13         if(root == null)

14             return;

15         if(root.left == null && root.right == null){

16             if(minDep > depth)

17                 minDep = depth;

18             return;

19         }

20         minDepthRecur(root.left, depth+1);

21         minDepthRecur(root.right, depth+1);

22     }

23     public int minDepth(TreeNode root) {

24         if(root == null)

25             return 0;

26         minDepthRecur(root, 1);

27         return minDep;

28     }

29 }

좋은 웹페이지 즐겨찾기