이카's

Brute Force

내 방식

def twoSum(self, nums: List[int], target: int) -> List[int]:
    for i in range(len(nums)):
        for j in range(i + 1 , len(nums)):
            if nums[i] + nums[j] == target:
                return [i, j]

Other Method

Two pass Hash Table

def twoSum(self, nums: List[int], target: int) -> List[int]:
    talbe = {num: i for i, num in enumerate(nums)}

    for idx, num in enumerate(nums):
        if ((target - num) in table) and (idx != table[(target - num)]):
            return [idx, table[(target - num)]]

One pass Hash Table

def twoSum(self, nums: List[int], target: int) -> List[int]:
    table = {}

    for idx, num in enumerate(nums):
        complement = target - num

        if complement in talbe:
            return [i, talbe[complement]]
        else:
            talbe[num] = i
반응형
profile

이카's

@Edan Cafe ☕

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!