二叉树的深度

题目描述

输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。
 1 /**
 2  * 
 3  * @author gentleKay
 4  * 题目描述
 5  * 输入一棵二叉树,求该树的深度。
 6  * 从根结点到叶结点依次经过的结点(含根、叶结点)
 7  * 形成树的一条路径,最长路径的长度为树的深度。
 8  */
 9 
10 public class Main37 {
11 
12     public static void main(String[] args) {
13         // TODO Auto-generated method stub
14         TreeNode root = new TreeNode(1);
15         root.left = new TreeNode(2);
16         root.left.left = new TreeNode(4);
17         root.left.left.right = new TreeNode(6);
18         
19         root.right = new TreeNode(3);
20         root.right.right = new TreeNode(5);
21         
22         int count = Main37.TreeDepth(root);
23         System.out.println(count);
24         
25     }
26     
27     public static class TreeNode {
28         int val = 0;
29         TreeNode left = null;
30         TreeNode right = null;
31 
32         public TreeNode(int val) {
33             this.val = val;
34         }
35 
36     }
37     
38     public static int TreeDepth(TreeNode root) {
39         if (root == null) {
40             return 0;
41         }
42         int a = TreeDepth(root.left)+1;
43         int b = TreeDepth(root.right)+1;
44         
45         return a > b ? a : b;
46     }
47 
48 }
原文地址:https://www.cnblogs.com/strive-19970713/p/11172712.html