题解 | #数组中只出现一次的数(其它数出现k次)#

数组中只出现一次的数(其它数出现k次)

http://www.nowcoder.com/practice/5d3d74c3bf7f4e368e03096bb8857871

使用hash表,数组数字为key,出现的次数为value,当value==3时,从hash表中删除,到最后了,只剩一下一个元素,这个元素肯定是出现一次的数字。

class Solution {
public:
    int foundOnceNumber(vector<int>& arr, int k) {
        // write code here
        unordered_map<int, int> m;
        for(int i = 0;i < arr.size();i++)
        {
            m[arr[i]]++;
            if(m[arr[i]] == k)
            {
               auto it = m.find(arr[i]);
               m.erase(it);
            }
        }
        return m.begin()->first;
        
    }
};
全部评论

相关推荐

05-22 09:23
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务