异或运算:

异或运算介绍:

异或(^)是一个数学运算符。它应用于逻辑运算。异或的数学符号为“⊕”,计算机符号为“^”。

二进制下异或运算法则:

1 ^ 1=0

0 ^ 0=0

1 ^ 0=1

0 ^ 1=1

因此十进制下相同数字异或结果为0,数字a与0异或结果仍为原来的数字a。

另外有:

a ⊕ a = 0

a ⊕ b = b ⊕ a

a ⊕ b ⊕ c = a ⊕ (b ⊕ c) = (a ⊕ b) ⊕ c;

a ⊕ b ⊕ a = b

因此异或全部的元素的结果就是那个只出现1次的元素。

异或运算交换两个数的值:(两数的地址不能相同)

a[i] = a[i] ^ a[j];
a[j] = a[i] ^ a[j];
a[i] = a[i] ^ a[j];

你可能感兴趣的:(LeetCode(java))