LeetCode: Single Element in a Sorted Array
Question
You are given a sorted array consisting of only integers where every element appears exactly twice, except for one element which appears exactly once. Find this single element that appears only once.
Follow up: Your solution should run in O(log n) time and O(1) space.
Solution
def single_non_duplicate(nums)
return nums.first if nums.length == 1
sorted_nums = nums.sort
i, j = 0
while i <= sorted_nums.length-1
if nums[i] == nums[i+1]
i += 2
else
return nums[i]
end
end
end
Comments