일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 배열파티션
- 우테코
- 파이썬
- 10869번
- v-for
- MSA
- v-model
- 코어자바스크립트
- 2588번
- 실행 컨텍스트
- 3003번
- 객체지향의 사실과 오해
- 젠킨스
- v-if
- 10926번
- hoisting
- 백준
- 이벤트버블링
- 프리코스
- 쿠버네티스
- 이벤트캡쳐링
- 도커
- DevOps
- JavaScript
- LeetCode
- 빅오표기법
- Python
- v-on
- vue
- 리스트복사
Archives
- Today
- Total
새오의 개발 기록
Leetcode 1: 두 수의 합 본문
덧셈하여 타겟을 만들 수 있는 배열의
두 숫자 인덱스를 리턴하라.
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
# 입력 예제
num = [2, 7, 11, 15], target = 9
# 출력 예제
[0, 1]
# 설명
# nums[0] + nums = 2 + 7 = 9
# 따라서 0, 1을 리턴한다.
풀이
1. 브루트 포스(무차별 대입)로 계산
단순히 푸는 방법
배열을 2번 반복하면서 모든 조합을 더해서 일일이 확인해보는 방법이다.
이 경우 시간 복잡도가 O(n^2)으로 지나치게 느려서 최적화 할 수 있는 다른 방법을 찾아봐야 한다.
def twoSum(self, nums, target):
arr = []
for i in range(len(nums)):
for j in range(i+1, len(nums)):
# 첫번째 인덱스와 두번째 인덱스를 통해 값을 구해서 더함
# 더한 값이 타겟과 같으면 해당 인덱스를 반환
if nums[i] + nums[j] == target:
return [i, j]
'Algorithm > Leetcode' 카테고리의 다른 글
Leetcode 238: 자신을 제외한 배열의 곱 (0) | 2022.10.07 |
---|---|
Leetcode 561: 배열 파티션 1 (0) | 2022.10.06 |
Leetcode 49: 그룹 애너그램 (0) | 2022.10.02 |
Leetcode 819: 가장 흔한 단어 (0) | 2022.10.01 |
Leetcode 937: 로그 파일 재정렬 (0) | 2022.10.01 |