이진 트리의 높이를 가져 오는 함수를 작성하려고합니다. maxi
의 값을 인쇄 할 때 값은 예상 한 값이지만 함수가 값을 반환하면 값은 항상 0입니다. 누군가 내가 여기서 잘못하고있는 것을 말할 수 있습니까?이진 트리 높이 찾기
int treeHeight(tree *p)
{
static int maxi=0;
static int i=0;
if(p==NULL)
{
return maxi;
}
else
{
if(p->left!=NULL||p->right!=NULL)
{
i++;
}
else
{
i++;
if(maxi<i)
{
maxi=i;
}
}
treeHeight(p->left);
treeHeight(p->right);
i--;
}
}
경고를 비활성화하지 않은 경우 컴파일러는 잊어 버린 것을 말했을 것입니다. –