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.
树的遍历问题,比较简单,注意只有在是叶子节点的时候再进行返回,同时注意处理一下输入为null的情况。
public int minDepth(TreeNode root) { if(root == null) return 0; if(root.left == null && root.right == null) return 1; // leaf node else if(root.left == null && root.right != null) return minDepth(root.right) + 1; else if(root.left != null && root.right == null) return minDepth(root.left) + 1; else return Math.min(minDepth(root.left), minDepth(root.right)) + 1; }
没有评论:
发表评论