题解 | #二叉树的深度#
二叉树的深度
http://www.nowcoder.com/practice/435fb86331474282a3499955f0a41e8b
标准的树递归,不多说了
/** public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } */ public class Solution { static int high=0; public int TreeDepth(TreeNode root) { fun(root,0); return high; } public void fun(TreeNode head,int h){ if(head==null){ return; } int now_h=h+1; //如果当前是叶子节点 if(head.left==null&&head.right==null){ if(now_h>high){ high=now_h; return; } } //如果当前不是叶子节点,当前深度+1,传给孩子 if(head.left != null || head.right != null){ fun(head.left,now_h); fun(head.right,now_h); } } }