码迷,mamicode.com
首页 > 其他好文 > 详细

136 Single Number(找唯一数Medium)

时间:2015-06-12 11:31:24      阅读:102      评论:0      收藏:0      [点我收藏+]

标签:

题目意思:一个int数组,有一个数只出现一次,其他数均出现两次,找到这个唯一数

知识普及:~:非运算,单目运算符1为0,0为1;

       &:与运算,都为1则为1,否则为0

     |:或运算,全为0则为0,否则为1

          ^:异或运算,相同为0,不同为1

思路:将数组中元素进行异或运算,则只剩下0和唯一数,异或得到的是唯一数

 

 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^=nums[i];
 7         }
 8         return res;
 9     }
10 };

 

时间复杂度:O(n)

 

136 Single Number(找唯一数Medium)

标签:

原文地址:http://www.cnblogs.com/smallby/p/4571144.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!