class Solution { public: void FindNumsAppearOnce(vector<int> data,int* num1,int *num2) { // 思路:定义一个map, key存放出现的数字,value为对应出现的次数 map<int, int> m; vector<int> v; int num = data.size(); for(int i=0; i<num; i++) { m[data[i]]++; } /* 迭代器写法 for(map<int, int>::iterator it = m.begin(); it!=m.end(); it++) { if((*it).second == 1) { v.push_back((*it).first); } } */ // 范围for循环 for(auto r : m) { if(r.second == 1) { v.push_back(r.first); } } *num1 = v[0]; *num2 = v[1]; } };