LeetCode:Single Number

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?

 

在《编程之美》里面见过,很巧妙的一种异或运算的解决方案。

 

 1 class Solution {
 2 public:
 3     int singleNumber(vector<int>& nums) {
 4         int res = 0;
 5         for(int i = 0;i<nums.size();i++){
 6             res = res ^ nums[i];
 7         }
 8         return res;
 9     }
10 };

 

posted @ 2016-03-02 00:11  suwish  阅读(89)  评论(0)    收藏  举报