Python Two Sum 알고리즘
해시 테이블을 사용하면 이중 반복문을 피할 수 있습니다.
Two Sum 알고리즘이란?
해시 테이블을 사용하면 이중 반복문을 피할 수 있습니다.
합이 target인 두 값을 찾습니다.
언제 사용하나요?
- 알고리즘과 자료 구조를 이해합니다.
- 각 단계와 경계 조건을 확인합니다.
- 실행 시간과 메모리 사용량을 비교합니다.
예제 코드
main.py
def two_sum(values, target):
seen = {}
for index, value in enumerate(values):
complement = target - value
if complement in seen:
return [seen[complement], index]
seen[value] = index
return []
print(two_sum([2, 7, 11, 15], 9))
예상 출력
[0, 1]
작동 원리
보수를 O(1)에 조회해 전체 시간 O(n), 메모리 O(n)이 됩니다.
값을 변경하고 Python 설치 없이 CodeUtility 온라인 Python 컴파일러에서 실행하세요.
연습 문제
입력값과 경계 조건을 바꾸고 더 큰 데이터에서도 동작을 확인하세요.
- 빈 입력, 한 요소, 중복값을 시험하세요.
- 각 단계의 상태를 출력하세요.
- 다른 풀이와 성능을 비교하세요.