#LeetCode# 136. Single Number

https://leetcode.com/problems/single-number/description/

 

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

代码:

class Solution {
public:
    int singleNumber(vector<int>& nums) {
        int n = nums.size();
        map<int, int> mp;
        for(int i = 0; i < n; i ++) {
            mp[nums[i]] ++;
        }
        for(int i = 0; i < n; i ++) {
            if(mp[nums[i]] == 1) return nums[i];
        }
    }
};

  

posted @ 2018-11-06 18:49  丧心病狂工科女  阅读(134)  评论(0编辑  收藏  举报