leetcode刷题15:single number
2014-05-07 23:22
316 查看
题目很简单,就是数字数组中除了一个数字,其他都是出现两次的,问怎么找到这个只出现一次的。
思路是使用一个集合,遍历给定数组,
如果当前数字不在集合中,就把它加入集合,这意味着第一次遇到该数字。
如果当前数字在集合中,就把他从集合中删除,这意味着第二次遇到该数字,因为只有一个出现一次的数组,所以遍历结束集合中还剩一个数字,即为所求。
代码:
class Solution:
def singleNumber(self,A):
ss=set()
for int_ in A:
if int_ in ss:
ss.discard(int_)
else:
ss.add(int_)
return ss.pop()
思路是使用一个集合,遍历给定数组,
如果当前数字不在集合中,就把它加入集合,这意味着第一次遇到该数字。
如果当前数字在集合中,就把他从集合中删除,这意味着第二次遇到该数字,因为只有一个出现一次的数组,所以遍历结束集合中还剩一个数字,即为所求。
代码:
class Solution:
def singleNumber(self,A):
ss=set()
for int_ in A:
if int_ in ss:
ss.discard(int_)
else:
ss.add(int_)
return ss.pop()
相关文章推荐
- 数据库性能、集群,新品
- setsockopt函数
- 动态链接库导出函数示例
- java web项目基础
- C#尝试读取或写入受保护的内存。这通常指示其他内存已损坏。
- Maven学习笔记
- 端午节前计划
- Windows TortoiseSVN和Linux SVN入门
- cvc-complex-type.2.4.a: Invalid content was found starting with element
- 【LeetCode】Palindrome Partitioning II
- Jquery实现异步上传图片
- LINUX进程通信--消息队列
- Goto JS apply 方法
- 不能输入全角字符 全角转换为半角 去掉全角下的所有空格
- android 使用自定义控件制作 类似天猫广告条滑动效果
- 美国军方无人机系统从Solaris切换到Linux
- 3Sum
- Failed to connect to 127.0.0.1:27017
- 本地new int[]的处理
- Servlet和SpringMVC补课