题目:
思路:
异或操作可以剔除出现偶数次数的元素,所以对该数组全部异或则可得出现一次的数据。
代码:
class Solution {
public int singleNumber(int[] nums) {
int result = nums[0];
/**
* 对数组进行异或操作,如果出现两次的数据会被抵消,出现一次的数据则不会,所以全部异或出来的则是出现一次的数据
*/
for(int i = 1; i < nums.length; i++) {
result ^= nums[i];
}
return result;
}
}