左闭右闭 普通写法
[left,right] left可以==right
int left=0;
int right=nums.size()-1;
while(left<=right)
{
int mid=(left+right)/2;
if(target<nums[mid])right=mid-1;
else if(target>nums[mid])left=mid+1;
else return mid;
}
return -1;
左闭右开 [left,right) left不可以==right
int left=0;
int right=nums.size();
while(left<right)
{
int mid=(left+right)/2;
if(target<nums[mid])right=mid;
else if(target>nums[mid])left=mid+1;
else return mid;
}
return -1;