求二叉树的树的高度

关键点 递归的使用


public class TreeHeight {
	public static int getTreeHeight(TreeNode root) {
		if (root == null) {
			return 0;
		}
		return 1 + Math.max(getTreeHeight(root.left), getTreeHeight(root.right));//这里直接使用Math.max()函数
	}

	public static void main(String[] args) {
		TreeNode node1 = new TreeNode(1);
		TreeNode node2 = new TreeNode(2);
		TreeNode node3 = new TreeNode(3);
		TreeNode node4 = new TreeNode(4);
		TreeNode node5 = new TreeNode(5);
		node1.left = node2;
		node1.right = node3;
		node2.left = node4;
		node2.right = node5;
		System.out.println(getTreeHeight(node1));
	}
}

class TreeNode {
	TreeNode left = null;
	TreeNode right = null;
	int val;

	TreeNode(int val) {
		this.val = val;
	}
}

多思考,多尝试。
原文地址:https://www.cnblogs.com/LynnMin/p/9373643.html