剑指OFFER 数字在排序数组中出现的次数
剑指OFFER 数字在排序数组中出现的次数
题目描述
统计一个数字在排序数组中出现的次数。
利用排序特性解法
class Solution {
public:
int GetNumberOfK(vector<int> data ,int k) {
int size = data.size();
int count = 0;
for(int i=0;i<size;i++)
{
if(data[i]==k){
while(data[i]==k)
{
count++;
i++;
}
return count;
}
}
return count;
}
};
标准库通用解法
不管有没有排序都可以得到该数字出现的次数
class Solution {
public:
map<int,int> m;
int GetNumberOfK(vector<int> data ,int k) {
int size = data.size();
for(int i=0;i<size;i++)
{
m[data[i]]++;
}
return m[k];
}
};