260. Single Number III LeetCode
来源:互联网 发布:发改委大数据专项2016 编辑:程序博客网 时间:2024/05/12 11:59
题意:给出一个数组,数组中除了两个元素以外,其他元素都出现了两次,求这两个元素。
题解:把所有的元素异或起来。得到XOR,这个值实际就是要求的两个元素的异或,那么XOR的最右边的第一个1一定是这两个元素一个有的一个没有的,那么我们用这一位去区分这两个数,在异或一遍数组,如果数字的这一位上是1,异或到第一个数上,如果等于0,异或到第二个数上。
class Solution {public: vector<int> singleNumber(vector<int>& nums) { int Xor = 0; int n = nums.size(); for(int i = 0; i < n; i++) Xor ^= nums[i]; int lowbit = Xor & -Xor; int one = 0, two = 0; for(int i = 0; i < n; i++) { if(lowbit & nums[i]) one ^= nums[i]; else two ^= nums[i]; } vector<int> v; v.push_back(one); v.push_back(two); return v; }};
0 0
- [leetcode] 260.Single Number III
- Leetcode 260. Single Number III
- 260. Single Number III LeetCode
- [LeetCode]260. Single Number III
- LeetCode 260. Single Number III
- LeetCode 260. Single Number III
- LeetCode 260. Single Number III
- LeetCode *** 260. Single Number III
- leetcode-260. Single Number III
- 【leetcode】 260. Single Number III
- leetcode 260.Single Number III
- leetcode 260. Single Number III
- 【LeetCode】260. Single Number III
- Leetcode 260. Single Number III
- LeetCode - 260. Single Number III
- 【leetcode】260. Single Number III
- leetcode 260. Single Number III
- LeetCode 260. Single Number III
- 内部类
- C++对象的动态建立和释放
- Linux文件权限与目录总结
- 第11讲项目3——如何买玫瑰?
- 习题10-3 UVA 1643 Angle and Squares 角度和正方形
- 260. Single Number III LeetCode
- json-handle:json可视化工具
- 刷题、OJ 1903 有假币
- HDU 1242 Rescue(dfs深搜)
- C#成神之路<19> C#使用磁盘数据文件(3)
- km入门-----hdu2255
- 《线程》——多线程同步实例剖析
- Windows 下免费的 C++ 开发平台 EasilyGCC 正式发布
- USACO 1.2 namenum