题目
不使用中间变量交换变量a、b变量
解答
方法1
用引用实现交换
代码1
void swap2(int& a,int& b)
{
int temp;
temp=a;
a=b;
b=temp;
}
方法2
用指针实现交换
代码2
void swap3(int* a,int* b)
{
int temp;
temp=*a;
*a=*b;
*b=temp;
}
方法3
不使用中间变量实现交换,使用引用或指针都可以
代码3
void swap4(int& a,int& b)
{
a=a+b;
b=a-b;
a=a-b;
}
方法4
不使用中间变量实现交换改进版,使用引用或指针都可以
代码4
void swap5(int& a,int& b)
{
a=a^b;
b=a^b;
a=a^b;
}