在知乎看的,很有意思,就是交换两个参数值,但是不能使用其他额外的空间
主要是运用了异或的自反性:A ^ B ^ B = A,即对给定的数A,用同样的运算因子(B)作两次异或运算后仍得到A本身。
所以有
int a = 10, b = 5;
a = a ^ b;
b = a ^ b;
a = a ^ b;
在知乎看的,很有意思,就是交换两个参数值,但是不能使用其他额外的空间
主要是运用了异或的自反性:A ^ B ^ B = A,即对给定的数A,用同样的运算因子(B)作两次异或运算后仍得到A本身。
所以有
int a = 10, b = 5;
a = a ^ b;
b = a ^ b;
a = a ^ b;