数字在升序数组中出现的次数

题目链接

Solution

暴力。
询问一个数出现的次数,扫一遍数组,如果当前数和这个数相等,答案+1。
没有什么太难的地方,详见代码,代码比较简单易懂。
当然因为数组是升序的,可以二分出第一个大于这个数的位置和第一个小于这个数的位置,然后做差得到答案,但是数据范围较小,可以直接复杂度过。

Code

class Solution {
public:
    int GetNumberOfK(vector<int> data ,int k) {
        int ans = 0;
        for (int i = 0; i < (int)data.size(); ++i) 
            if (data[i] == k) ans ++;
        return ans;
    }
};