N35
給定一個排序陣列和一個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。
你可以假設陣列中無重複元素。
採用二分查詢法。
class Solution {
public int searchInsert(int[] nums, int target) {
int left=0;
int right=nums.length-1;
int mid=(left+right)/2;
while (left<right){
mid=(left+right)/2;
if (target==nums[mid])
return mid;
else{
if (target>nums[mid]){
left=mid+1;
}
if (target<nums[mid]){
right=mid-1;
}
}
}
if (left==right)
if(nums[left]<target)
return left+1;
if (nums[left]>=target)
return left>0?left:0;
return 0;
}
}