Skip to content

Commit f9b368d

Browse files
committed
feat: two-sum
1 parent 4df0570 commit f9b368d

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

two-sum/choidabom.ts

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
// https://leetcode.com/problems/two-sum/
2+
3+
// TC: O(n^2)
4+
// SC: O(1)
5+
6+
function twoSum(nums: number[], target: number): number[] {
7+
for (let i = 0; i < nums.length; i++) {
8+
for (let j = i + 1; j < nums.length; j++){
9+
if (nums[i] + nums[j] === target){
10+
return [i, j]
11+
}
12+
}
13+
}
14+
return []
15+
};
16+
17+
// TC: O(n)
18+
// SC: O(n)
19+
20+
function twoSum(nums: number[], target: number): number[] {
21+
const map = new Map()
22+
23+
for (let i = 0; i < nums.length; i++) {
24+
const num = nums[i]
25+
const diff = target - num
26+
27+
if (map.has(diff)) {
28+
return [i, map.get(diff)]
29+
} else {
30+
map.set(num, i)
31+
}
32+
}
33+
return []
34+
};
35+
36+
console.log(twoSum([2,7,11,15], 9))

0 commit comments

Comments
 (0)