计算二叉树深度
思路:采用递归的方法。用两个值分别计算二叉树的左右子树的深度,左右子树中最深的的深度就是树的深度
int deep(TNode *t){ //参数:树t if(t == NULL) return 0; //若第一个节点就是空的,说明这是空树 int n = deep(t->lchild); //层层深入 int m = deep(t->rchild); if(n > m) return n+1; //如果左树更深,在‘归’的过程中,每上一层就加一 return m+1; }
思路:采用递归的方法。用两个值分别计算二叉树的左右子树的深度,左右子树中最深的的深度就是树的深度
int deep(TNode *t){ //参数:树t if(t == NULL) return 0; //若第一个节点就是空的,说明这是空树 int n = deep(t->lchild); //层层深入 int m = deep(t->rchild); if(n > m) return n+1; //如果左树更深,在‘归’的过程中,每上一层就加一 return m+1; }