题目链接
看到题目后第一想法:
class Solution {
public int search(int[] nums, int target) {
int index = -1;
for(int i = 0; i < nums.length; i++){
if(target == nums[i]){
index = i;
break;
}
}
return index;
}
}
优化代码(本题目的应是想要使用二分查找):
class Solution {
public int search(int[] nums, int target) {
int len = nums.length;
int left = 0;
int right = len - 1;
int index = -1;
while(left <= len / 2){
if(nums[left] == target){
index = left;
break;
}else {
left++;
}
if(nums[right] == target){
index = right;
break;
}else {
right--;
}
}
return index;
}
}