异或运算

别说谁变了你拦得住时间么 提交于 2020-02-19 11:41:23

性质

1、交换律

2、结合律(即(aXORb)XORc == aXOR(bXORc))

3、对于任何数x,都有xXORx=0,xXOR0=x

4、自反性 A XOR B XOR B = A XOR 0 = A

异或运算最常见于多项式除法,不过它最重要的性质还是自反性:A XOR B XOR B = A,即对给定的数A,用同样的运算因子(B)作两次异或运算后仍得到A本身。这是一个神奇的性质,利用这个性质,可以获得许多有趣的应用。 例如,所有的程序教科书都会向初学者指出,要交换两个变量的值,必须要引入一个中间变量。但如果使用异或,就可以节约一个变量的存储空间: 设有A,B两个变量,存储的值分别为a,b,则以下三行表达式将互换他们的值 表达式 (值) :

A=A XOR B (a XOR b)
B=B XOR A (b XOR a XOR b = a)
A=A XOR B (a XOR b XOR a = b)

java中交换数据写法:

 int a = 10, b = 5
 a = a ^ b; 
 b = a ^ b; 
 a = a ^ b; 
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!