题目描述
思路
遍历
由于数组是有序的,因此数组中相同的元素一定相邻,所以只要找到偶数下标x,使得nums[x]≠nums[x+1]即可。
Java实现
class Solution {
public int singleNonDuplicate(int[] nums) {
int n = nums.length;
for (int i = 0; i < n-1; i += 2) {
if (nums[i] != nums[i+1])
return nums[i];
}
return nums[n-1];
}
}
Python实现
class Solution:
def singleNonDuplicate(self, nums: List[int]) -> int:
n = len(nums)
for i in range(0, n-1, 2):
if nums[i] != nums[i+1]:
return nums[i]
return nums[n-1]