异或的性质与python 异或的运用
异或
数字相同异或结果为0,否则为1,
例1:1 xor 1 = 0 , 0 xor 0 = 0 ,1 xor 0 =1
在计算机中,数字以二进制的形式计算。在python中,^ 表示异或计算
例2:
a = 8
b = 10
a转换为二进制 a = 0b 1000
b转换为二进制 b = 0b 1010
a ^ b = 0b 0010 = 2
异或性质
1、交换律 a ^ b = b *a
2、结合律(即(a ^ b) ^ c == a ^ (b ^ c))
3、对于任何数x,都有x ^ x=0,x ^ 0 = x
4、自反性 a ^ b ^ b = a ^ 0 = a
异或的使用
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
https://leetcode.com/problems/single-number/description/
class Solution: def singleNumber2(self, nums): r = 0 for i in nums: r ^= i return r

浙公网安备 33010602011771号