(Python PYTHON)LeetCode【Two sum】

  • by

Two Sum – LeetCode

Can you solve this real interview question? Two Sum – Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would haveact may not

leetcode.com



class Solution:
    def twoSum(self, nums: List(int), target: int) -> List(int):
        ans = ()
        dic = {}            
        for i in range(len(nums)):
            dic(nums(i))=i

        for i in range(len(nums)):
            num = target-nums(i)
            if num in dic and i !
= dic(num): ans.append(i) ans.append(dic(num)) break return ans

nums 라는 배열이 주어져 nums 의 원소를 선택해 target 값을 만들 수 있는 인덱스를 구하는 문제였다.

사전의 데이터 구조를 사용하여 해결되었습니다.

(Java 맵과 유사)

dic = { 값 = “index} 글꼴로 저장했습니다.

nums = ( 2, 7, 11, 15 )라면 dic = {2:0, 7:1, 11:2, 15:3}은 이렇게 저장됩니다.

저장 후 for 문을 다시 사용하여 조건을 하나씩 충족하는지 확인합니다.

target – nums(i) 하나의 값이 dic에 존재하고 그 값의 위치가 i와 다른 경우 for 문을 종료합니다.

이중 for 문을 사용하지 않고 풀어 뭔가 기뻤던 문제다.