加法
void swap(int& a, int& b)
{
a = a+b;
b = a-b;
a = a-b;
}
+/-:会发生溢出
异或
void swap(int& a, int& b)
{
a ^= b;
b ^= a;
a ^= b;
}
异或不会溢出,且因为是位运算,所以效率高;
void swap(int& a, int& b)
{
a = a+b;
b = a-b;
a = a-b;
}
+/-:会发生溢出
void swap(int& a, int& b)
{
a ^= b;
b ^= a;
a ^= b;
}
异或不会溢出,且因为是位运算,所以效率高;