swap的异或实现办法
//普通的交换元素实现办法
void swap(int &a,int &b)
{
if(a!=b)
{
int temp;
temp=a;
a=b;
b=temp;
}
}
异或运算的实现如下:
//异或运算的实质:不带进位的加法
void Swap1(int &a, int &b)
{
a ^= b;
b ^= a; //b=b^a^b
a ^= b; //a=a^b^a^b
}
该实现方法的优势在于无第三方的加入,节约了空间