540. Single Element in a Sorted Array (Medium)

Given a sorted array consisting of only integers where every element appears twice except for one element which appears once. Find this single element that appears only once.

Example 1:

Input: [1,1,2,3,3,4,4,8,8]
Output: 2

Example 2:

Input: [3,3,7,7,10,11,11]
Output: 10

Note: Your solution should run in O(log n) time and O(1) space.

思路:
^ 按位异或运算符,同为0,不同为1;

class Solution():
    def singleNonDuplicate(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        ans = 0
        for i in range(len(nums)):
            ans ^= nums[i]
        return ans
 
原文地址:https://www.cnblogs.com/yancea/p/7517255.html