LeetCode - 540. Single Element in a Sorted Array

时间:2020-12-10 20:30:21

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

class Solution {
    public int singleNonDuplicate(int[] nums) {
        if (nums == null)
            return 0;
        int i = 0, j = 1;
        while (i < nums.length-1 && j < nums.length) {
            if (nums[i] == nums[j]) {
                i+=2;
                j+=2;
            }
            else {
                return nums[i];
            }
        }
        return nums[nums.length-1];
    }
}