classSolution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param array int整型vector * @return int整型vector */ vector<int> FindNumsAppearOnce(vector<int>& array){ // write code here int x = 0, y = 0, n = 0, m = 1; // 1.遍历异或 for (int num : array) n ^= num; // 2.循环左移,计算 m while ((n & m) == 0) m <<= 1; // 3.遍历分组,array & m != 0; array & m == 0 for (int num : array) { if (num & m) x ^= num; else y ^= num; } // 5.返回两个数字 if (x <= y) returnvector<int> {x, y}; else returnvector<int> {y, x}; } };