Skip to content

Commit 4d32152

Browse files
committed
#219 two-sum solution
1 parent 394d0ed commit 4d32152

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

two-sum/sungjinwi.cpp

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
/*
2+
풀이 :
3+
타깃을 뺸 complement 값을 구하고 해시테이블(unordered_map)에 존재하면 리턴
4+
없으면 해시테이블에 값 : 인덱스 형태로 저장
5+
6+
nums의 size: N
7+
TC : O(N)
8+
size만큼 for문 반복
9+
SC : O(N)
10+
size만큼 해시테이블에 추가
11+
*/
12+
13+
#include <vector>
14+
#include <unordered_map>
15+
using namespace std;
16+
17+
class Solution {
18+
public:
19+
vector<int> twoSum(vector<int>& nums, int target) {
20+
unordered_map<int, int> umap;
21+
vector<int> result;
22+
for (int i = 0; i < nums.size(); i++)
23+
{
24+
int complement = target - nums[i];
25+
if (umap.find(complement) == umap.end())
26+
umap[nums[i]] = i;
27+
else
28+
{
29+
result.push_back(i);
30+
result.push_back(umap[complement]);
31+
return result;
32+
}
33+
}
34+
return result;
35+
}
36+
};

0 commit comments

Comments
 (0)