描述

分析
位运算的题。
根据异或 “相同为零,不同为一” 的特点,使数组中元素相互异或可以在O(n)O(n)O(n)的时间复杂度消掉所有双数个数的元素。
代码
class Solution {
public:
int singleNumber(vector<int>& nums) {
int val = nums[0];
for(int i = 1;i < nums.size();i++)
val ^= nums[i];
return val;
}
};
本文介绍了一种利用位运算解决特定问题的方法,通过异或操作的特点,可以在O(n)时间复杂度内从数组中找出唯一出现一次的元素,巧妙地消除了所有成对出现的元素。
1050

被折叠的 条评论
为什么被折叠?



