LeetCode | Single Number
2013-12-13 16:48
489 查看
题目:
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?
思路:
直接排序或对比,时间复杂度一定在nlogn以上。利用Hash表或者Bitmap可以满足时间复杂度但是空间复杂度不能满足。O(n)时间类能采用的办法只有异或。
代码:
class Solution { public: int singleNumber(int A[], int n) { while (--n!=0) A[n-1]^=A ; return A[0]; } };
相关文章推荐
- Ferris教程学习笔记:js示例3.9 倒计时时钟
- mpeg4 esds及帧判断
- Compile wpa_supplicant2.0 for IPNC
- 时过境迁后。。。。。。。。。。
- Session blocked itself
- C语言头文件的作用
- 用于验证码图片识别的类(C#源码)
- 作为一个新人,怎样学习嵌入式Linux?被问过太多次,特写这
- C++ 基类私有纯虚函数 在派生类中的实现
- OpenGLes2.0 什么是Pbuffer
- Ferris教程学习笔记:js示例3.8 简易网页时钟
- 我的战场 -- 书
- 机器学习算法与Python实践之(三)支持向量机(SVM)进阶
- 【Android】Android之Action Bar
- 冒泡排序
- SSH登录报错Permission denied (publickey)
- iOS 7 教程:定制iOS 7中的导航栏和状态栏
- 每周日与周四《红酒屋》探戈舞会"Wine Bar" Milonga_原生态拉丁_新浪博客
- 消息提示demo
- Ferris教程学习笔记:js示例3.6 判断数字是否为两位数