Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
안녕하세요,
이번 주에는 세 문제를 풀어봤습니다.
리뷰해주셔서 감사합니다. 😄
답안 제출 문제
문제별 내용 정리
01. Two Sum
접근 방법
배열의 모든 요소를 순회하면서 순회중인 요소와 더해서 목표로 하는 값(
target
)이 딕셔너리(index_map
)에 있는지 확인합니다.요소가 있다면, 두 수의 인덱스를 배열에 넣어서 반환합니다.
없다면, 해당 요소를 키로, 요소의 인덱스를 값으로
index_map
에 추가합니다.시간 복잡도
O(n), 최악의 경우 배열의 모든 요소를 순회해야 하기 때문에 O(n)로 판단했어요.
공간 복잡도
O(n), 배열의 크기만큼의 요소를
index_map
에 저장하기 때문에 O(n)로 판단했어요.02. Climbing Stairs
접근 방법
계단 i번째에 도달하는 방법의 수는 i-1번째 계단에서 한 계단 올라오는 방법과 i-2번째 계단에서 두 계단 올라오는 방법을 합한다는 개념을 이용해서 문제를 풀었습니다!
시간 복잡도
O(n), n개의 계단에 대해 각 경우의 수를 계산하기 위해 반복문이 n번 실행되기 때문에 O(n)으로 판단했어요.
공간 복잡도
O(n), n개의 계단까지 도달하는 방법의 수를 배열에 저장하기 때문에 O(n)으로 판단했어요.
03. Product of Array Except Self
접근 방법
i번째 요소를 제외한 나머지 수들의 곱은 i-1번째까지 요소들의 곱과 i+1번째부터 마지막 요소까지의 곱으로 구할 수 있다는 개념을 이용했습니다.
시간 복잡도
O(n), 왼쪽/오른쪽 요소들의 곱으로 이뤄진 배열을 만들어내는 데 배열의 크기 만큼 연산이 필요하기 때문에 O(n)으로 판단했어요.
공간 복잡도
O(n), 왼쪽/오른쪽 요소들의 곱으로 이뤄진 배열을 만들어내는 데 배열의 크기 만큼의 공간이 필요하기 때문에 O(n)으로 판단했어요.
체크 리스트
In Review
로 설정해주세요.