프로그래밍/LeetCode
C++ 136. Single Number(Leet Code)
devsu
2020. 6. 22. 22:18
Leet Code_136. Single Number
https://leetcode.com/problems/single-number/
문제 해석
이 문제를 풀기위해 이해해야 할 내용은 다음과 같습니다.
목표
vector 원소 중 중복되지 않는 숫자 구하기
방법
1. vector 원소 중 중복되지 않는 숫자 구하기
2. hash table을 사용하기
결과
vector 원소 중 중복되지 않는 숫자 구하기
통과한 코드
class Solution {
public:
int singleNumber(vector<int>& nums) {
unordered_map<int, int> map;
for(int i = 0 ; i < nums.size() ; i++)
{
map[nums[i]]++;
}
for (unordered_map<int, int>::iterator it = map.begin(); it != map.end(); it++)
{
if (it->second == 1)
return it->first;
}
return 0;
}
};
unordered_map을 사용하였다.
map의 key값에 접근하여 하나씩 value를 증가 시켰고
map을 돌면서 value 값이 1인 key를 찾아 해결하였다.
map원소를 for문으로 first, second를 처음 써보았는데 신기하고 편리하다