[ds@client-ds-26-242-86 mediam]$ cat no34_FindFirstandLastPositionofElementinSortedArray.cpp
#include<iostream>
#include<vector>
using namespace std;
class Solution{
public:
vector<int> searchRange(vector<int> &nums,int target){
vector<int> res = {-1,-1};
int ll = 0;
int lr = nums.size() - 1;
while(ll <= lr){
int m = (ll + lr)/2;
if(target > nums[m]){
ll = m + 1;
}
else{
lr = m -1;
}
}
int rl = 0;
int rr = nums.size() - 1;
while(rl <= rr){
int m = (rl + rr)/2;
if(target < nums[m]){
rr = m - 1;
}
else{
rl = m + 1;
}
}
if(ll <= rr){
res[0] = ll;
res[1] = rr;
}
return res;
}
};
int main(){
Solution so;
vector<int> nums = {5,7,7,8,8,10};
int target = 8;
vector<int> res =so.searchRange(nums,target);
cout << "res 0 is: " << res[0] << "res 1 is: " << res[1] << endl;
}
07-06
07-07
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交