Skip to content

Commit 912fe12

Browse files
committed
feat: Upload two-sum(typescript)
1 parent 4c8b68f commit 912fe12

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

โ€Žtwo-sum/mike2ox.tsโ€Ž

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
/**
2+
* Source: https://leetcode.com/problems/two-sum/
3+
* ํ’€์ด๋ฐฉ๋ฒ•: Map์„ ์ด์šฉํ•˜์—ฌ ํ•„์š”ํ•œ ๋‚˜๋จธ์ง€ ์ˆซ์ž๋ฅผ ์ €์žฅํ•˜๋ฉด์„œ ํ™•์ธ
4+
* ์‹œ๊ฐ„๋ณต์žก๋„: O(n)
5+
* ๊ณต๊ฐ„๋ณต์žก๋„: O(n)
6+
*/
7+
function twoSum(nums: number[], target: number): number[] {
8+
// nums์˜ ๊ฐ’์„ key๋กœ, ์ธ๋ฑ์Šค๋ฅผ value๋กœ ์ €์žฅํ•˜๋Š” Map
9+
const numMap = new Map<number, number>();
10+
11+
for (let i = 0; i < nums.length; i++) {
12+
const remain = target - nums[i]; // ํ•„์š”ํ•œ ๋‚˜๋จธ์ง€ ์ˆซ์ž ๊ณ„์‚ฐ
13+
14+
// ํ•„์š”ํ•œ ๋‚˜๋จธ์ง€ ์ˆซ์ž๊ฐ€ Map์— ์žˆ๋Š”์ง€ ์ฒดํฌ
15+
if (numMap.has(remain)) {
16+
return [numMap.get(remain)!, i];
17+
}
18+
// ํ˜„์žฌ ์ˆซ์ž์™€ ์ธ๋ฑ์Šค ์ €์žฅ
19+
numMap.set(nums[i], i);
20+
}
21+
22+
return [];
23+
}

0 commit comments

Comments
ย (0)