3.30
刚开始用三目表达式就超时了
慎用啊
一定要避免重复计算
/**
* Definition of TreeNode:
* public class TreeNode {
* public int val;
* public TreeNode left, right;
* public TreeNode(int val) {
* this.val = val;
* this.left = this.right = null;
* }
* }
*/
public class Solution {
/**
* @param root: The root of binary tree.
* @return: An integer.
*/
public int maxDepth(TreeNode root) {
if(root == null){
return 0;
}
if(root.right == null){
return maxDepth(root.left)+1;
}
if(root.left == null){
return maxDepth(root.right)+1;
}
int x1 = maxDepth(root.left);
int x2 = maxDepth(root.right);
if(x1 > x2){
return x1+1;
}
else{
return x2+1;
}
// return maxDepth(root.left) > maxDepth(root.right)?maxDepth(root.left)+1:maxDepth(root.right)+1;
// write your code here
}
}
本文探讨了在计算二叉树最大深度时遇到的性能瓶颈,并提出了一种避免重复计算的方法来提高效率。通过具体代码示例展示了如何有效减少不必要的递归调用。
850

被折叠的 条评论
为什么被折叠?



