只使用2个变量实现交换两个int数字的方法:
异或法:
if(a == b) return; //防止&a,&b指向同一个地址;那样结果会错误
a ^= b;
b ^= a;
a ^= b;
法2:
a = b - a;
b = b - a;
a = b + a;
法3:
x=x+y;
y=x-y;
x=x-y;
法4:
a = a*b;
b = a/b;
a = a/b;
法5:
b=a+b-(a=b);