Skip to content

Commit 004bec5

Browse files
authored
Merge pull request #2384 from mrlee7/main
[Jeff] Week 01 Solutions
2 parents 9bcabe4 + 23666b2 commit 004bec5

File tree

2 files changed

+39
-0
lines changed

2 files changed

+39
-0
lines changed
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
from typing import List
2+
3+
4+
class Solution:
5+
"""
6+
Ideation:
7+
๊ฐ ์›์†Œ๊ฐ€ ๋ฐœ๊ฒฌ๋˜๋ฉด hash map ์— ํ•ด๋‹นํ•˜๋Š” item ๊ธฐ๋ฐ˜์œผ๋กœ flag๋ฅผ ์„ธ์šด๋‹ค.
8+
ํ•ด๋‹น ์ธ๋ฑ์Šค์—์„œ flag๊ฐ€ ์ด๋ฏธ ์ผœ์ ธ์žˆ๋‹ค๋ฉด, ์•ž์—์„œ ํƒ์ƒ‰๋œ ์›์†Œ์ด๋ฏ€๋กœ True๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
9+
๋งˆ์ง€๋ง‰๊นŒ์ง€ ๋‹ค ๋Œ์•˜๋Š”๋ฐ ์ค‘๋ณต๋œ ์ผ€์ด์Šค๊ฐ€ ์—†๋‹ค๋ฉด False๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
10+
Time complexity: O(n)
11+
Space complexity: O(n)
12+
"""
13+
14+
def containsDuplicate(self, nums: List[int]) -> bool:
15+
seen = {}
16+
for num in nums:
17+
if num in seen:
18+
return True
19+
seen[num] = 1
20+
return False

โ€Žtwo-sum/mrlee7.pyโ€Ž

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
from typing import List
2+
3+
4+
class Solution:
5+
"""
6+
Ideation:
7+
target = x + y -> target - x = y
8+
x ์›์†Œ๋ฅผ ๊ฐ€์žฅ ๋ฐ”๊นฅ์˜ ์ดํ„ฐ๋ ˆ์ด์…˜์—์„œ ๋Œ๋ฉด์„œ ํ•˜๋‚˜์”ฉ ๋Œ€์ž…ํ•ฉ๋‹ˆ๋‹ค.
9+
์ฐพ๊ณ ์ž ํ•˜๋Š” ๊ฐ’์ด (x,y) ์Œ์ด๋ฏ€๋กœ, ๋‘๊ฐœ์˜ ์ธ๋ฑ์Šค๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•ด ์ธ๋ฑ์Šค ๊ธฐ์ค€์œผ๋กœ ์ดํ„ฐ๋ ˆ์ด์…˜์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค( enumerate ์‚ฌ์šฉ ๊ฐ€๋Šฅ).
10+
y๊ฐ’์ด ์ฐพ์•„์ง€๋ฉด ๋‹น์‹œ์˜ x๊ฐ’์˜ ์ธ๋ฑ์Šค์™€ ํ•จ๊ป˜ (index_of_x, index_of_y) ๋ฅผ ๋ฆฌ์ŠคํŠธ๋กœ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
11+
Time Complexity: O(N^2)
12+
Space Complexity: O(1)
13+
"""
14+
15+
def twoSum(self, nums: List[int], target: int) -> List[int]:
16+
for i in range(0, len(nums) - 1):
17+
for j in range(i + 1, len(nums)):
18+
if (target - nums[i]) == nums[j]:
19+
return [i, j]

0 commit comments

Comments
ย (0)