Minimum Depth of Binary Tree(LeetCode)
来源:互联网 发布:百世汇通软件 编辑:程序博客网 时间:2024/06/15 04:40
题目:
难度级别: ★★
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.
题目分析:
题目给出一个二叉树,要求根节点到任一叶子节点的最短路径的长度。
思路:
- 深度优先遍历二叉树
- 从叶子节点开始返回depth值。叶子节点返回1.
- 对于非叶子节点,计算其左孩子、右孩子的minDepth,选择较小的那个加1之后返回。
注意点:
- 注意 int leftDepth = Integer.MAX_VALUE; 赋予int型最大值的用法。
- 对于递归问题,要搞清楚是先处理再递归,先递归在处理,或者是处理->递归->处理。
代码:
/** * Definition for binary tree * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */public class Solution { public int minDepth(TreeNode root) { if (root == null){ return 0; } if (root.left == null && root.right == null){ return 1; } int leftDepth = Integer.MAX_VALUE; int rightDepth = Integer.MAX_VALUE; if (root.left != null){ leftDepth = minDepth(root.left); } if (root.right != null){ rightDepth = minDepth(root.right); } return (leftDepth < rightDepth) ? (leftDepth + 1) : (rightDepth + 1); }}
0 0
- LeetCode: Minimum Depth of Binary Tree
- [Leetcode] Minimum Depth of Binary Tree
- LeetCode : Minimum Depth of Binary Tree
- leetcode 31: Minimum Depth of Binary Tree
- [LeetCode] Minimum Depth of Binary Tree - BFS
- [LeetCode] Minimum Depth of Binary Tree - DFS
- 【leetcode】Minimum Depth of Binary Tree
- LeetCode:Minimum Depth of Binary Tree
- [LeetCode]Minimum Depth of Binary Tree
- [Leetcode]Minimum Depth of Binary Tree
- [leetcode]Minimum Depth of Binary Tree
- Leetcode: Minimum Depth of Binary Tree
- LeetCode-Minimum Depth of Binary Tree
- [leetcode] Minimum Depth of Binary Tree
- LeetCode - Minimum Depth of Binary Tree
- 【Leetcode】Minimum Depth of Binary Tree
- LeetCode | Minimum Depth of Binary Tree
- LeetCode - Minimum Depth of Binary Tree
- hdu 2844 多重背包
- hdu4906 Our happy ending --- 状压dp
- HDU 1166 敌兵布阵 (线段树)
- HDOJ 题目1564 play a game(博弈)
- windows下Android源码的分模块下载
- Minimum Depth of Binary Tree(LeetCode)
- git学习 - 忽略版本控制文件
- 登陆界面 LinearLayout的属性的用法
- 我之见--java进程,线程
- VS自定义代码折叠的位置
- 中期报告:多平台网络探测器
- poj 1088 滑雪 【记忆化搜索】+【DFS】
- malloc/free 的使用要点 以及 new/delete 的使用要点
- XE6 安卓电量检测