一.原题如下
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
二.分析
根据题目所表达的意思,我们只需要找出在这个数组中只出现一次的数组元素,并返回该数组元素。
在这里更好的方式是使用异或运算符“^",其知识点如下:
0 ^ 数字=数字本身;相同的数字之间异或等于0。如0 ^ 3=3;3 ^ 3=0。
三.代码实现
//C实现
int singleNumber(int* nums, int numsSize){
//用位运算,异或^
int result=0;
for(int i=0;i
result^=nums[i];
}
return result;
}
//C++实现
class Solution {
public:
int singleNumber(vector& nums) {
int result=0;
for(int i=0;i
result^=nums[i];
}
return result;
}
};
我是老胡,阳光Boy❤️ ❤️



