We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
2 parents 1162590 + 092f6ee commit 517b8c4Copy full SHA for 517b8c4
python/0540-single-element-in-a-sorted-array.py
@@ -0,0 +1,27 @@
1
+class Solution:
2
+ def singleNonDuplicate(self, nums: List[int]) -> int:
3
+ def is_non_duplicate(i):
4
+ is_left_different = i == 0 or nums[i-1] != nums[i]
5
+ is_right_different = i == len(nums)-1 or nums[i+1] != nums[i]
6
+ return is_left_different and is_right_different
7
+
8
+ if len(nums) == 1:
9
+ return nums[0]
10
11
+ l, r = 0, len(nums) - 1
12
+ while l <= r:
13
+ mid = (l + r) // 2
14
+ if is_non_duplicate(mid):
15
+ return nums[mid]
16
17
+ if mid % 2 == 0:
18
+ if nums[mid+1] == nums[mid]:
19
+ l = mid + 1
20
+ else:
21
+ r = mid - 1
22
23
24
25
26
27
0 commit comments