int finddepth(Node *node,int key)
{
if(node==NULL)
return 0;
if(node->data==key)
return 1;
return max(depth(node->left),depth(node->right));
}
我只想计算特定节点的高度或深度。我将如何增加深度。我知道这个程序总是返回1.
答案 0 :(得分:0)
我认为不需要复杂,你可以尝试下面的代码
int finddepth(Node* root)
{
if(root==NULL)
return 0;
int l=finddepth(root->left);
int r=finddepth(root->right);
if(l>r)
return l+1;
return r+1;
}