Skip to content

Commit f01aeb3

Browse files
committed
fix two some
1 parent a51dcca commit f01aeb3

File tree

1 file changed

+8
-9
lines changed

1 file changed

+8
-9
lines changed

two-sum/dylan-jung.cpp

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,16 @@
1+
// TC: O(N), SC: O(N)
2+
13
class Solution {
24
public:
35
vector<int> twoSum(vector<int>& nums, int target) {
4-
vector<tuple<int, int>> arr;
5-
arr.reserve(nums.size());
6+
unordered_map<int, int> m;
67
for(int i = 0; i < nums.size(); i++) {
7-
arr.push_back({nums[i], i});
8+
m[nums[i]] = i;
89
}
9-
int s = 0; int e = nums.size()-1;
10-
sort(arr.begin(), arr.end());
11-
while(s < e) {
12-
if(get<0>(arr[s]) + get<0>(arr[e]) > target) e-=1;
13-
else if (get<0>(arr[s]) + get<0>(arr[e]) < target) s+=1;
14-
else return {get<1>(arr[s]), get<1>(arr[e])};
10+
for(int first = 0; first < nums.size(); first++) {
11+
if(m.count(target - nums[first]) > 0 && first != m[target - nums[first]]) {
12+
return {first, m[target - nums[first]]};
13+
}
1514
}
1615
return {};
1716
}

0 commit comments

Comments
 (0)