个人主页:Lei宝啊
愿所有美好如期而遇
力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/single-number/
这里介绍一种方法,异或。
我们知道,0异或任何数都是数本身,而相同的两个数异或为0,所以我们初始化一个数为0,将整个数组全部异或一次,那么剩下的就是只出现一次的元素。
class Solution
{
public:
int singleNumber(vector<int>& nums)
{
int n = 0;
for(auto a : nums)
{
n ^= a;
}
return n;
}
};