这是我的代码看起来查找二叉树的最小数量递归
int main() {
//root is the rootnode of the tree
if(root!==NULL) {
int mini = min(root, root->data);
printf("minimum number is %d", mini);
}
return 0;
}
int min(node *root, int mini) {
if(root == NULL) {
return;
}
min(root->left, mini);
min(root->right, mini);
if(mini > root->data) {
mini = root->data;
}
return mini;
}
它不给我最小数目的树。相反,它将根节点打印为最小值。
'min(root-> left,mini);' - 你觉得这条线是干什么的? – immibis 2015-04-01 07:38:48
不,这不是什么线......想一想,min函数做了什么? (或者至少,它应该做什么?) – immibis 2015-04-01 07:42:47
提示:为什么你的递归函数返回一个整数?被丢弃? – 2015-04-01 07:48:33