題目連接:戳這裏
題目描述:輸入一棵二叉樹的根節點,求該樹的深度。從根節點到葉節點依次通過的節點(含根、葉節點)造成樹的一條路徑,最長路徑的長度爲樹的深度。
解題思路:分別遞歸左右子樹節點。
java代碼:java
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */ class Solution { public int maxDepth(TreeNode root) { int ans=0; int tmp=0; if(root==null){ return 0; }else{ return calculateDepth(root); } } public int calculateDepth(TreeNode root){ int sum=0; int left=0; int right=0; if(root!=null){ sum++; left=calculateDepth(root.left); right=calculateDepth(root.right); if(left>right){ sum=sum+left; }else sum=sum+right; }else{ sum=sum+0; } return sum; } }