이 글은 "파이썬 알고리즘 인터뷰 (박상길 지음)"을 읽고 주관적으로 요약한 글입니다. 문제 정의 단 하나의 수를 제외하고 모든 숫자가 2번씩 나올 때, 하나의 숫자 찾기 시간 복잡도는 linear, 공간 복잡도는 상수로 해결하기 책에서 구현된 코드 class Solution: def singleNumber(self, nums: List[int]) -> int: res = 0 for num in nums: res ^= num return res 기억해야할 기법 XOR를 이용한 중복 확인 0과 XOR -> 숫자가 가진 특정 비트의 1만 1로 표시 = 자신과 같은 값 같은 값과 XOR -> 모든 비트가 같으므로 0 2번씩 등장하는 값들을 임의의 순서로 0과 XOR - 각 비트마다 1이 짝수번 등장 = 0으로..