【LeetCode】Single Number
来源:互联网 发布:input file js赋值 编辑:程序博客网 时间:2024/06/06 11:48
参考链接
http://www.cnblogs.com/changchengxiao/p/3413294.html
http://www.cnblogs.com/longhorn/p/3525707.html
题目描述
Single Number
Given an array of integers, every element appears twice except for one. Find that single one.
Note:
Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?
题目分析
题目大意:
已知一个数组,除了其中一个元素之外,其他均出现两次。找出出现一次的元素。
要求:使用线性的时间复杂度,不使用额外的空间。
使用线性的复杂度就是要求O(n),这里其中2n,3n,4n都算,只要遍历有限次就是O(n)
思路:
自己确定没想出来,还是A的题太少了。参考网上的资料,主要依据有三个,
1. 异或运算是可交换,即 a ^ b = b ^ a
2. 0 ^ a = a
3. a^a = 0这三个依据得出什么结论呢?出现两次的经过异或之后为0。根据第二条规那么最后剩下的就是只出现一次的那个数。
这个思路对于我这个第一次见的人来说确实很神奇。
本来想把Single Number II 一起写了的。但是对比一个发现思路还是不太一样的。所以就再写一篇吧。
链接:
代码示例
推荐学习C++的资料
C++标准函数库
http://download.csdn.net/detail/chinasnowwolf/7108919
在线C++API查询
http://www.cplusplus.com/
map使用方法http://www.cplusplus.com/reference/map/map/
0 0
- leetcode Single Number & Single Number ||
- [LeetCode] Single Number
- Leetcode: Single Number
- Leetcode Single Number
- Single Number - leetcode
- Single Number II - leetcode
- Leetcode: Single Number II
- 【LeetCode】Single Number
- [LeetCode] Single Number II
- LeetCode: Single Number II
- LeetCode: Single Number
- leetcode -- Single Number II
- [leetcode]Single Number II
- [LeetCode] Single Number II
- [LeetCode]Single Number
- Leetcode Single Number
- 【leetcode】Single Number
- 【leetcode】Single Number II
- [LeetCode]Linked List Cycle
- 取出对象中的字符串
- 类加载器---类加载器简介
- 堆排序
- 五子棋 - 稍微写出有点实际用途的程序了,感觉不错!
- 【LeetCode】Single Number
- WINDOWS下C++的套接字编程
- Android开发之使用SharedPreferences实现QQ登陆的选项框记忆功能(源代码分享)
- android应用开发MVC框架(一)
- Flex Socket 安全沙箱问题
- 深入了解bash与sh的区别
- C变量(auto、static、register、extern)函数(内部、外部)与存储
- (转) 针对 SQL Server 2008 的访问配置 Windows 防火墙
- WINCE 5.0 蓝牙SOCKET