136. 只出现一次的数字
巧用异或运算
class Solution {
// 任何数和 0 做异或运算,结果仍然是原来的数,即 a ^ 0 = a
// 任何数和其自身做异或运算,结果是 0,即 a ^ a = 0
// 根据这个性质可得,数组中的全部元素的异或运算结果即为数组中只出现一次的数字
public int singleNumber(int[] nums) {
int res = 0;
for (int num : nums) {
res ^= num;
}
return res;
}
}