【python实现】 136. 只出现一次的数字
2019-03-01 14:23
120 查看
解答:
V1.0
class Solution: def singleNumber(self, nums: List[int]) -> int: s = [] n = sorted(nums) for i in range(1, len(n)): if n[i-1] == n[i]: s.append(n[i]) for i in range(len(s)): n.remove(s[i]) for i in range(len(s)): n.remove(s[i]) return n[0]
V2.0
class Solution: def singleNumber(self, nums: List[int]) -> int: s = [] n = sorted(nums) for i in range(1, len(n)): if n[i-1] == n[i]: s.append(n[i]) for i in range(len(n)): if n[i] not in s: return n[i]
大神的解答:
class Solution: def singleNumber(self, nums): """ :type nums: List[int] :rtype: int """ res = 0 for i in nums: res^=i return res
总结:
异或^ :当两对应的二进位相异时,结果为1。0异或任何数不变,任何数与自己异或为0。
方法remove()只删除第一个指定的值。
相关文章推荐
- LINTCODE:136 只出现一次的数字(Python语言实现)
- LeetCode136.python实现: 只出现一次的数字☆
- 【LeetCode-面试算法经典-Java实现】【136-Single Number(仅仅出现一次的数字)】
- 【LeetCode-面试算法经典-Java实现】【136-Single Number(只出现一次的数字)】
- Leetcode刷题24-136.只出现一次的数字(C++)
- 剑指Offer 40题扩展 其他数字出现3次 找出只出现一次的那个 Java实现
- 一个数组中只有两个数字是出现一次,其他所有数字都出现了两次。 找出这两个数字,编程实现
- 剑指Offer面试题40:数组中只出现一次的数字 Java实现
- 程序员面试100题(算法)之找出数组中两个只出现一次的数字(位运算实现)
- Python实现统计给定列表中指定数字出现次数的方法
- 1.求第n个斐波那契数(非递归实现)。 2.一个数组中只有两个数字是出现一次,其他所有数字都出现 了两次。 找出这两个数字,编程实现。
- 一个数组中只有两个数字是出现一次,其他所有数字都出现了两次。找出这两个数字,编程实现。
- 一个数组中只有两个数字是出现一次,其他所有数字都出现了两次,找出这两个数字,编程实现
- PHP查找数组中只出现一次的数字实现方法【查找特定元素】
- LeetCode 136 Single Number(数组中只出现一次的数字)
- 统计n个随机数(随机0~10),每出现一次就用*号在数字下面写一次*【c语言实现】
- leetcode解题之136 #Single Number Java版(只出现一次的数字)
- Leetcode136. 只出现一次的数字
- 编程实现: 一组数据中只有一个数字出现了一次。其他所有数字都是成对出现的。 请找出这个数字。(使用位运算)
- Leetcode 136 Single Number 仅出现一次的数字