Search

Missing Number

문제 설명 : 0~N 까지 숫자 중 빠진 숫자를 반환
풀이 방법
set을 사용하여 미사용 숫자를 확인하였다.
시간복잡도 : O(N)O(N)
성공 코드
class Solution: def missingNumber(self, nums: List[int]) -> int: info = set(range(len(nums) + 1)) for num in nums: info.remove(num) return list(info)[0]
Python
복사
공간 복잡도 개선(O(N))
요소의 총합을 이용한 방법이었다.
1 ~ N 총합은 (N * (N+1) / 2) 로 구할 수 있다.
이를 제공된 nums 의 합을 사용하여 차이값을 반환한다.
class Solution: def missingNumber(self, nums: List[int]) -> int: return (len(nums) * (len(nums)+1) // 2) - sum(nums)
Python
복사