错误是内存溢出,怎么改

class Function{
public static int fun(int max, int min, int a[], int value ){
int mid = (max + min)/2;
if(a[mid] > value){
return fun(max, mid -1, a, value);
}
if(a[mid] < value){
return fun(mid+1, min, a, value);
}
if(a[mid] == value){
System.out.println(value + "是第" + "个数");
return mid;
}
return -2;
}
}

1个回答

这个不是内存溢出,而是堆栈溢出,你无限递归了。

qq_35247405
乔亲亲 回复caozhy: 谢谢,我看看去
大约 4 年之前 回复
caozhy
回答这么多问题就耍赖把我的积分一笔勾销了 回复乔亲亲: http://blog.csdn.net/lovesummerforever/article/details/24588989
大约 4 年之前 回复
qq_35247405
乔亲亲 要怎么改
大约 4 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问