Skip to content

Commit 742f2b8

Browse files
committed
Refactor: 0540 - Single Element in a Sorted Array (ts,js,cpp)
1 parent e444a22 commit 742f2b8

3 files changed

+13
-10
lines changed

cpp/0540-single-element-in-a-sorted-array.cpp

+5-4
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,15 @@ class Solution
1010

1111
while (left <= right)
1212
{
13-
int mid = (left + right) >> 1;
14-
if (nums[mid] == nums[mid ^ 1])
13+
int mid1 = (left + right) >> 1;
14+
int mid2 = mid1 ^ 1;
15+
if (nums[mid1] == nums[mid2])
1516
{
16-
left = mid + 1;
17+
left = mid1 + 1;
1718
}
1819
else
1920
{
20-
right = mid - 1;
21+
right = mid1 - 1;
2122
}
2223
}
2324

javascript/0540-single-element-in-a-sorted-array.js

+4-3
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,11 @@ var singleNonDuplicate = function (nums) {
1010
right = nums.length - 2;
1111

1212
while (left <= right) {
13-
const mid = (left + right) >> 1;
13+
const mid1 = (left + right) >> 1;
14+
const mid2 = mid1 ^ 1;
1415

15-
if (nums[mid] === nums[mid ^ 1]) left = mid + 1;
16-
else right = mid - 1;
16+
if (nums[mid1] === nums[mid2]) left = mid1 + 1;
17+
else right = mid1 - 1;
1718
}
1819

1920
return nums[left];

typescript/0540-single-element-in-a-sorted-array.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,11 @@ function singleNonDuplicate(nums: number[]): number {
66
right = nums.length - 2;
77

88
while (left <= right) {
9-
const mid = (left + right) >> 1;
9+
const mid1 = (left + right) >> 1;
10+
const mid2 = mid1 ^ 1;
1011

11-
if (nums[mid] === nums[mid ^ 1]) left = mid + 1;
12-
else right = mid - 1;
12+
if (nums[mid1] === nums[mid2]) left = mid1 + 1;
13+
else right = mid1 - 1;
1314
}
1415

1516
return nums[left];

0 commit comments

Comments
 (0)