异或的性质与python 异或的运用

异或
异或(xor)是一个数学运算符。它应用于逻辑运算。
 
数字相同异或结果为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

 

异或的使用

 

参照力扣136:只出现一次的数字

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

https://leetcode.com/problems/single-number/description/

 

class Solution:
    def singleNumber2(self, nums):
        r = 0
        for i in nums:
            r ^= i
        return r

 

posted @ 2020-12-07 11:44  韩梅梅op  阅读(719)  评论(0)    收藏  举报