常见算法之17---树的高度

题目:输入一棵二叉树的根结点,求该树的高度。


注释:从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的高度。


分析:当前节点的高度等于子数高度较大的值+1,递归实现。


代码

int BTreeHight(根节点) { 
  if (是叶子节点) 
    return 1; 
  左子树高度 = BTreeHight(root->left); 
  右子树高度 = BTreeHight(root->right); 
  int height; 

  if (左子树高度>右子树高度) 
    height = 左子树高度+1; 
  else 
    height = 右子树高度+1; 
  return height; 
}

posted @ 2013-10-29 18:22  欧麦高德  阅读(971)  评论(1编辑  收藏  举报