XOR异或运算
Sep 13, 2016
XOR
异或是一个数学运算符,用于逻辑运算.异或的数学符号为“⊕”,计算机符号为“xor”。运算规则为:
1^0=1
1^1=0
0^1=1
0^0=0
即:相同取0,相异取1.在判断真(1)假(0)时:仅有一个为真(1)时才为真(1).
异或的用途
1.在不必使用第三个值(中间变量)的时候,交换两个整数的值
|
|
2.奇偶判断
题目:一个数组存放若干整数,一个数出现奇数次,其余数均出现偶数次,找出这个出现奇数次的数?
解法:把所有数异或,偶数次异或为0,奇数次异或为数本身.
变形题目:1-1000放在含有1001个元素的数组中,只有唯一的一个元素值重复,其它均只出现一次。每个数组元素只能访问一次,设计一个算法,将它找出来;不用辅助存储空间,能否设计一个算法实现?
解法:把所有数异或后的结果与1-1000异或后的结果异或,得到结果.