반응형
Problem)
Solution)
먼저 제 첫번째 솔루션 입니다.
class Solution:
def twoSum(self, nums: List[int], target: int) -> List[int]:
for idx, value in enumerate(nums):
if (target - value) in nums:
if nums.index(target - value) != idx:
return [idx, nums.index(target - value)]
그보다 x20 빠른 솔루션 입니다.
class Solution:
def twoSum(self, nums: List[int], target: int) -> List[int]:
d = {}
for i, n in enumerate(nums):
m = target - n
if m in d:
return [d[m], i]
else:
d[n] = i
시간과 메모리 효율성을 항상 고려하는 습관을 길러야겠다
반응형
'알고리즘 > 코딩 테스트' 카테고리의 다른 글
[Leetcode] Subarray Sum Equals K (0) | 2020.08.25 |
---|---|
[ Leetcode ] Trapping Rain Water (0) | 2020.08.24 |
[Leetcode] Reverse String (0) | 2020.08.19 |
[Leetcode] Valid Palindrome (0) | 2020.08.18 |
[Leetcode] Container With Most Water (0) | 2020.06.04 |