当数组有序,可以考虑二分查找,栗子:
public int search(int key, int[] array) {
int left = 0;
int right = array.length - 1;
while(left <= right) {
int mid = left + (right - left) / 2;
if(key == array[mid]) {
return mid;
} else if(key < array[mid]) {
right = mid - 1;
} else {
left = mid + 1;
}
}
return -1;
}