하나의 숫자를 제외한 나머지 숫자들은 두 번씩 등장한다.
XOR의 성질을 사용해서 풀었다. 자기 자신을 XOR하면 0이 되기 때문에, 배열의 모든 수를 XOR 연산하면 정답을 구할 수 있다.
class Solution {
public:
int singleNumber(vector<int>& nums) {
int result = 0;
for (int i = 0; i < nums.size(); i++) result ^= nums[i];
return result;
}
};