力扣leetcode 136巧妙解法

2019-12-13  本文已影响0人  FrankXu0808

这道题本身不难,但如果加上条件,要求时间复杂度为线性,不使用额外的空间,就有了一些难度。在看评论时发现了使用异或来解决这个问题的解法,觉得很巧妙,记录一下。
首先,题目:


题目

基本思想就是下面这张图:


解题思想

还有一种很简单的做法,直接贴代码了:
···
class Solution:
def singleNumber(self, nums: List[int]) -> int:
return sum(set(nums))*2-sum(nums)
···

上一篇 下一篇

猜你喜欢

热点阅读