LeetCode 136 _ 位运算

1. 题目描述

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

 

 

2. 代码

1 class Solution:
2     def singleNumber(self, nums: List[int]) -> int:
3         a = 0
4         for i in nums:
5             a ^= i
6         return a

思路:数组中的全部元素的异或运算结果即为数组中只出现一次的数字.

异或运算有以下三个性质:

1 任何数和0做异或运算, 结果仍然是原来的数.
2 任何数和其自身做异或运算, 结果是0.
3 异或运算满足交换律和结合律.
来源:力扣(LeetCode)

 

posted @ 2020-09-26 10:27  vv_869  阅读(101)  评论(0编辑  收藏  举报