//leftindex 是开始下表 0 rightindex 是值得最大长度-1 val 要查找的值,arr[] 存放数值的数组
public void find(int leftindex,int rightindex,int val,int arr[])
{
//首先找到中间的数
int midindex =(leftindex+rightindex)/2;
int midval =arr[midindex];
if(rightindex>=leftindex){
//System.out.println("23232");
//如果找到的数比midval 大
if(midval>val){
//在arr左边的数中找
find(leftindex,midindex-1,val,arr);
}else if(midval<val){
//在arr右边中找
find(midindex+1,rightindex,val,arr);
}else if(midval==val){
System.out.println("找到下表"+ midindex);
}
}
}
本文详细阐述了在数组中查找特定值的算法过程,通过递归的方式实现从中间值开始判断并逐步缩小查找范围,直到找到目标值或确定不存在。此算法适用于有序数组,具有高效的时间复杂度。
772

被折叠的 条评论
为什么被折叠?



