题目:输入一棵二叉树的根结点,求该树的高度。
注释:从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的高度。
分析:当前节点的高度等于子数高度较大的值+1,递归实现。
代码:
int BTreeHight(根节点) {
if (是叶子节点)
return 1;
左子树高度 = BTreeHight(root->left);
右子树高度 = BTreeHight(root->right);
int height;
if (左子树高度>右子树高度)
height = 左子树高度+1;
else
height = 右子树高度+1;
return height;
}