题解 | #数组中只出现一次的两个数字#

数组中只出现一次的两个数字

http://www.nowcoder.com/practice/389fc1c3d3be4479a154f63f495abff8

哈希

用一个map容器,存数组里面每个元素的出现次数。
然后遍历map,把值为2的键存入vector。

class Solution {
public:
    vector<int> FindNumsAppearOnce(vector<int>& array) {
        // write code here
        map<int,int>s;
        vector<int>num;
        for(int i=0;i<array.size();i++){  //用map存出现的次数
            s[array[i]]++;
        }
        map<int,int>::iterator iter;
        for(iter=s.begin();iter!=s.end();iter++){  //遍历map,找值为2的对应的键
            if(iter->second==1) num.push_back(iter->first);
        }
        return num;
    }
};
全部评论

相关推荐

像好涩一样好学:这公司我也拿过 基本明确周六加班 工资还凑活 另外下次镜头往上点儿
点赞 评论 收藏
分享
我是小红是我:学校换成中南
点赞 评论 收藏
分享
2 1 评论
分享
牛客网
牛客企业服务