力扣算法——136SingleNumber【E】

Given a non-empty 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?

Example 1:

Input: [2,2,1]
Output: 1

Example 2:

Input: [4,1,2,1,2]
Output: 4


Solution:
  使用异或运算,相同为0,不同为1,剩下的那个就是唯一的那个数了

1 class Solution {
2 public:
3     int singleNumber(vector<int>& nums) {
4         int res = 0;
5         for (auto a : nums)res = res ^ a;
6         return res;
7     }
8 };

 

posted @ 2019-11-06 23:34  自由之翼Az  阅读(165)  评论(0编辑  收藏  举报