배열 A가 있다고 가정합니다. 이 배열에는 두 번 발생하는 다른 숫자가 있습니다. 그러나 한 번 나타나는 숫자는 하나뿐입니다. 해당 배열에서 해당 요소를 찾아야 합니다.
A =[1, 1, 5, 3, 2, 5, 2]라고 가정하면 출력은 3이 됩니다. 각 숫자가 두 번 있으므로 XOR을 수행하여 해당 요소를 제거할 수 있습니다. y XOR y =0
을 알고 있기 때문에이 문제를 해결하기 위해 다음 단계를 따릅니다.
-
하나의 변수로 res =0
-
배열 A의 각 요소 e에 대해 res :=res XOR e
를 수행합니다. -
반환 해상도
예시
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
class Solution(object): def singleNumber(self, nums): ans = nums[0] for i in range(1,len(nums)): ans ^=nums[i] return ans ob1 = Solution() print(ob1.singleNumber([1,1,5,3,2,5,2]))
입력
[1,1,5,3,2,5,2]
출력
3