数组总长度n,寻找target值下标
class Solution {
public:
int search(vector<int>& nums, int target) {
int l=0,r=nums.size()-1;
while(l<r)
{
int mid=(l+r+1)/2;//设置中间值mid. l=mid 则+1. r=mid 则不需要+1
if(nums[mid]<=target) l=mid;//如果中间值不大于target值的话,则target值一定在[mid,r]区间内
else r=mid-1;//否则在[l,mid-1]
}
//最终循环中止在l=r处
if(nums[l]!=target) return -1;//如果数组中不存在该target值,返回-1
else return l;//否则返回下标
}
};