(1)引入中间变量,但在执行swap(a,a)时会报错。
void swap(int &a,int &b)
{
int t;
t = a;
a = b;
b = t;
}
void swap(int &a,int &b)
{
a = a + b;
b = a - b;
a = a - b;
}
(3)使用异或运算,这种实现方法交换效率较使用临时变量的效率高。
void swap(int &a, int &b)
{
a ^= b;
b ^= a;
a ^= b;
}
(1)引入中间变量,但在执行swap(a,a)时会报错。
void swap(int &a,int &b)
}
(3)使用异或运算,这种实现方法交换效率较使用临时变量的效率高。
void swap(int &a, int &b)