两个变量(数)交换
一临时变量
1.普通
int swap(int a,int b)
{
int tmp;
tmp = a;
a = b;
b = tmp;
return 0;
}
2.指针
int swap1(int * a,int * b)
{
int tmp = *a;
*a = *b;
*b = tmp;
return 0;
}
注意:以上两种方法的区别 第一种是不会影响外面的变量
二不需要临时变量
1.异或 这种法即不需要空间,cup一般做位操作指令速度是最快的
int swap2(int a,int b)
{
a = a^b;
b = a^b;
a = a^b;
return 0;
}
1.运算 +-*/
该方法缺点明显:+-*/有越界,相加可能会超出范围,不能使用