问题描述:二分查找
分析:确定左右边界
class Solution
{
public:
int Fun(vector<int>&arr,int key)
{
int mid = 0;
int start = 0;
int end = arr.size();
while(start <= end)
{
mid = start + (end - start)/2;
if(arr[mid] == key)
{
return mid;
}
else if(arr[mid] > key)
{
end = mid - 1;
}
else if(arr[mid] < key)
{
start = mid +1;
}
}
return -1;
}
};