104. 二叉树的最大深度
题目描述:
链接: https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/submissions/
给定一个二叉树,找出其最大深度。
二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。
说明: 叶子节点是指没有子节点的节点。
代码:
和求最小深度一样, 利用递归思想
class Solution { // T: O(n), S: O(n) public int maxDepth(TreeNode root) { if (root == null) return 0; // 返回当前节点的深度1 if ((root.left == null) && (root.right == null)) return 1; int max_depth = Integer.MIN_VALUE; // 获取左右子树中的较大深度 if (root.left != null) { max_depth = Math.max(max_depth, maxDepth(root.left)); } if (root.right != null) { max_depth = Math.max(max_depth, maxDepth(root.right)); } return max_depth + 1; } }