[LeetCode 136] Single Number
2016-08-29 23:38
363 查看
题目内容
136.Single NumberGiven 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?
题目来源
题目简述
在数组中找出唯一一个不成对的数。题目分析
由于题目要求用线性时间且不用额外空间解决问题,所以只能用一次遍历,而且只能使用常数存储空间。所以对每个元素使用异或运算,相同元素的运算结果为0,其他元素与0进行异或运算结果不变。所以遍历整个数组后运算结果即为唯一的不同元素。代码示例
class Solution { public: int singleNumber(vector<int>& nums) { if(nums.empty()) return -1; int result=nums[0]; int n=nums.size(); for(int i=1;i!=n;i++) result=result^nums[i]; return result; } };
相关文章推荐
- [leetcode-136]Single Number(c)
- LeetCode 136. Single Number找数组单元素 Python Solution
- LeetCode每日一题——136. Single Number
- leetcode 136. Single Number
- LeetCode 136. Single Number
- [LeetCode136]Single Number寻找一个数组里只出现一次的数
- leetcode_136 Single Number
- leetcode 136 Single Number, 260 Single Number III
- leetcode--136--Single Number
- [leetcode 136] Single Number
- LeetCode Problem 136:Single Number
- [LeetCode]136. Single Number
- LeetCode 136. Single Number
- LeetCode 136 Single Number
- leetcode 136-Single Number
- leetcode(136). Single Number
- [LeetCode#136, 137]Single Number, Single Number 2
- LeetCode 136. Single Number
- leetcode 136. Single Number | XOR的巧妙运用
- LeetCode 136: Single Number