Skip to content

Commit f7ff2c1

Browse files
committed
[Leet] 34. Find First and Last Position of Element in Sorted Array re [medium]
1 parent ca2aece commit f7ff2c1

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

허현빈/4주차/260120-2.js

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
/**
2+
* @param {number[]} nums
3+
* @param {number} target
4+
* @return {number[]}
5+
*/
6+
var searchRange = function (nums, target) {
7+
let startAns = -1;
8+
let endAns = -1;
9+
let start = 0;
10+
let end = nums.length - 1;
11+
while (1) {
12+
if (start > end) break;
13+
let m = Math.floor((start + end) / 2);
14+
if (nums[m] === target) {
15+
startAns = m;
16+
end = m - 1;
17+
} else if (nums[m] > target) {
18+
end = m - 1;
19+
} else {
20+
start = m + 1;
21+
}
22+
}
23+
24+
let start2 = 0;
25+
let end2 = nums.length - 1;
26+
27+
while (1) {
28+
if (start2 > end2) break;
29+
30+
let m = Math.floor((start2 + end2) / 2);
31+
if (nums[m] === target) {
32+
endAns = m;
33+
start2 = m + 1;
34+
} else if (nums[m] > target) {
35+
end2 = m - 1;
36+
} else {
37+
start2 = m + 1;
38+
}
39+
}
40+
return [startAns, endAns];
41+
};

0 commit comments

Comments
 (0)