Single Number
来源:互联网 发布:网络教育全国统考难吗 编辑:程序博客网 时间:2024/06/08 13:16
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?
给定一组整数,出了一个数外其他整数全部都出现了两次。
Note:
你的算法必须是线性的时间复杂度,你能不用额外的空间的么?
方法很简单,运用异或运算。
异或运算满足交换律,当两数相同时为0,不同时为1。所以所有有两个的数异或之后都为0了,最后再跟最后一个single异或则得到那个single。
代码如下:
class Solution {public: int singleNumber(int A[], int n) { int result=0; for(int i=0;i<n;i++) { result=result^A[i]; } return result; }};
0 0
- Single Number
- single number
- Single Number
- Single Number
- Single Number
- Single Number
- Single Number
- Single Number
- Single Number
- Single Number
- Single Number
- Single Number
- Single Number
- Single Number
- single number
- Single Number
- Single Number
- Single Number
- 缓慢变化思想1
- Android Application对象必须掌握的七点
- win7安装python开发环境,运行python
- 今天的总结
- 关于session的一些了解
- Single Number
- ORA-01779: 无法修改与非键值保存表对应的列
- 自学Python之——替换字符串子串
- 游戏碰撞之OBB算法实现(java代码实现)
- Stanford机器学习---第八讲. 支持向量机SVM
- Handler Runnable和Thread之间的区别和联系
- CF # 296 C Glass Carving (并查集 或者 multiset)
- iOS应用安全Part2:获取iOS应用的类信息
- 内存字节对齐