题目描述
统计一个数字在排序数组中出现的次数。
第一种解法:
int GetNumberOfK(vector<int> data ,int k){
if(data.size() == 0){
return 0;
}
int count = 0;
for(int i = 0;i < data.size();i++){
if(data[i] == k){
count++;
}
if(data[i] > k){
break;
}
}
return count;
}
第二种解法:
可以直接使用stl库里面的equal_range函数
//数字在排列数组中出现的次数
int GetNumberOfK(vector<int> data ,int k){
if(data.size() == 0){
return 0;
}
pair< vector<int>::iterator, vector<int>::iterator> result;
result = equal_range(data.begin(),data.end(),k);
return result.second - result.first;
}