题目要求:
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 unordered_map<int, int> hashMap; 5 int sz = nums.size(); 6 for(int i = 0; i < sz; i++) 7 hashMap[nums[i]]++; 8 9 unordered_map<int, int>::iterator itr = hashMap.begin(); 10 for(; itr != hashMap.end(); itr++) 11 { 12 if(itr->second == 1) 13 return itr->first; 14 } 15 16 return INT_MIN; 17 } 18 };