티스토리 뷰

 

안녕하세요. 죠쵸입니다.

LeetCode 01.Two Sum 문제를 풀고, 문제를 통해서 알고리즘 및 기초 Python 문법들을 알아보겠습니다.

https://leetcode.com/problems/two-sum/

 

Two Sum - LeetCode

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

leetcode.com

 

#LeetCode 01.Two Sum Problem (Description)

 

정수 nums의 리스트와 Target(정수)이 주어집니다. 주어진 정수배열 안에서, 두수의 합이 Target(정수)이 되도록하고, 결과는 해당 두 수의 인덱스를 리스트로 반환하는 것입니다. 정확히 하나의 솔루션이 있다고 가정하며, 동일한 요소를 두 번 사용할 수 없습니다. 어떤 순서로든 값을 반환 할 수 있습니다.

 

#LeetCode 01.Two Sum Problem (Solution)

 

class Solution:
    def twoSum(self, nums: list, target: int) -> list:
        return_val = []

        for index1, value1 in enumerate(nums):
            value2 = target - value1

            if value2 in nums[index1+1:]:
                return_val.append(index1)
                return_val.append(nums[index1+1:].index(value2)+index1+1)

        return return_val

 

리스트로 받은 정수를 순차적으로 Target - value1 = value2 연산을 하고 해당 value2가 입력받은 리스트 안에 있는지 합니다. value2가 존재할 경우 value1의 Index와 value2의 Index를 return_val 리스트에 추가하고 해당 리스트를 반환하게 됩니다. enumerate 함수를 통해서 value1의 Index를 쉽게 얻고, 연산할 수 있습니다. 

 

#Enumerate 함수

 

enumerate 함수 리스트 또는 tuple과 같은 collection을 입력받아 enumerate object를 생성해 줍니다. 아래의 예제를 참조부탁 드립니다.

x = {'JOECHO', 'PYTHON', 'LEETCODE'}
y = enumerate(x)

print(list(y))

 

방문해 주셔서 감사합니다. 여러분의 공감하기(), 댓글과 구독은 저에게 힘이 됩니다.

이상으로 죠쵸였습니다.

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함