xor 两个数字就地交换?

xor the two numbers in place swap?

我遇到了使用异或交换两个数字的问题。所以它基本上是 x=x^y; y=x^y; x=x^y,我可以想到 y=(x^y)^y=x,所以 y 现在变成 x,但最后一个不是吗x=x^y = (x^y)^(x^y)= 0? x 怎么变成 y?

x=x^y
y=(x^y)^y
x=(x^y)^((x^y)^y) //here is how you get x = y

你替换错了。