总结了几种置换位置的方法
int a = 3, b = 8;
//交换两个数
1、利用第三方变量
int temp;
temp = a;
a = b;
b = temp;
2、不利用第三方变量,利用算术运算符
b = b - a;
a = a + b;
b = a - b;
3、不利用第三方变量,利用算术运算符
a = a + b ; //如果a和b的值都非常大,容易超出int范围
b = a - b;
a = a - b;
4、不利用第三方变量,利用逻辑运算符
a = a ^ b;
b = a ^ b;//(a^b)^b 一个数异或同一个数两次,还是这个数
a = a ^ b;//(a^b)^((a^b)^b)
5、不利用第三方变量,利用算术运算符和赋值运算符
a = a + b -(b = a);
|