交换 a b:
方法一: 利用中间变量
int temp = a;
a = b;
b = temp;
方法二 : 利用 加减运算; 两个数的和 — 一个数 = 另一个数
a=a+b;
b=a-b;
a=a-b;
//a=a-b;
//b=a+b;
//a=b-a;
方法三 : 利用 按位异或(相同尾0,不同为1) 计算; 一个数与另一个数异或的结果 再与 另一个数异或 结果就是另一个数
a=a^b;//bug,自身异或为0
b=a^b;
a=a^b;
交换 a b:
方法一: 利用中间变量
int temp = a;
a = b;
b = temp;
方法二 : 利用 加减运算; 两个数的和 — 一个数 = 另一个数
a=a+b;
b=a-b;
a=a-b;
//a=a-b;
//b=a+b;
//a=b-a;
方法三 : 利用 按位异或(相同尾0,不同为1) 计算; 一个数与另一个数异或的结果 再与 另一个数异或 结果就是另一个数
a=a^b;//bug,自身异或为0
b=a^b;
a=a^b;