有一个数组,数组中仅有一个数字出现一次,其余出现两次,求出现一次的数字。
方法:把数组中所有元素进行异或运算,那么最后的结果就是出现一次的数字。异或运算会让相同的数字变为0,那么最后剩余的那个数字肯定是仅出现一次的。
#include<iostream>
using namespace std;
int Arr[11]={1,1,3,5,4,3,4,5,10,11,10};
int main()
{
int x=Arr[0];
for(int i=1;i<11;++i)
{
x=x^Arr[i];
}
cout<<x<<endl;
return 0;
}