1、常规的方法
int src[] = {0, 1, 2, 3, 4};
public int search(int key){
for (int i = 0; i < src.length; i++)
if (src[i] == key)
return i;
}
2、优化
1方法中,for循环会每次判断数组是否会越界,可以对这个方面进行优化。
int src[] = {0, 0, 1, 2, 3, 4, 5};//数组的第一个保留
public static int search(int key){
int i = src.length;
//将第一个赋值给要查找的key src[0]称为哨兵 因为如果查找失败 需要有条件中止while循环
src[0] = key;
while (src[i] != key)
i--;
return i;//若i==0 表示查找失败
}