欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

牛课题霸--数组中只出现一次的数字

程序员文章站 2022-07-15 10:40:35
...

数组中只出现一次的数字

题目链接

Solution

只有两个数字出现了1次,其他数字都出现两次。
所以定义一个map,记录每个数字出现的次数。
最后扫一遍数组,找出只出现一次的数字即可。

Code

class Solution {
public:
    void FindNumsAppearOnce(vector<int> data,int* num1,int *num2) {
        ap<int,int>mp;
        bool fir = 0;
        for (int i = 0; i < (int)data.size(); ++i) mp[data[i]] ++;
        for (int i = 0; i < (int)data.size(); ++i) 
            if (mp[data[i]] == 1) {
                if (!fir) *num1 = data[i], fir = 1;
                else *num2 = data[i];
            }
    }
};