Home LeetCode. 34. Find First and Last Position of Element in Sorted Array
Post
Cancel

LeetCode. 34. Find First and Last Position of Element in Sorted Array

image

[Link] https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
class Solution {
    public int[] searchRange(int[] nums, int target) {
        int lb = -1, hb = -1, len = nums.length, l = 0, r = len - 1, mid;
        while(l <= r) {
            mid = (l + r) / 2;
            if(nums[mid] >= target) {
                r = mid - 1;
                if(nums[mid] == target) lb = r + 1;
            }
            else l = mid + 1;
        }
        l = 0;
        r = len - 1;
        while(l <= r) {
            mid = (l + r) / 2;
            if(nums[mid] <= target) {
                l = mid + 1;
                if(nums[mid] == target) hb = l - 1;
            }
            else r = mid - 1;
        }
        if(lb != -1 && hb != -1) return new int[]{ lb, hb };
        else return new int[] {-1, -1};
    }
}
This post is licensed under CC BY 4.0 by the author.