/**
* 给定一个数组,其中相邻元素的差为1,给定一个数字,返回其下标
* @author chen
*跳跃搜索法:从数组第一个元素开始,把数组当前位置的值与t进行比较,如果相等,返回数组下标,
*否则,从数组下标i+=t-arr[i]处继续查找。
*/
public class findIndex {
public static int findIndex(int arr[],int t){
if(arr==null)
return -1;
int i=0;
while(i<arr.length){
if(arr[i]==t)
return i;
else
i+=Math.abs(t-arr[i]);
}
return -1;
}
public static void main(String[] args) {
int arr[]={3,4,5,6,5,6,7,8,9,8};
System.out.println(findIndex(arr, 9));
}
}
指定数字在数组中第一次出现的位置
最新推荐文章于 2024-06-30 20:30:18 发布