“Найти первую и последнюю позицию элемента в сортированном массиве” Ответ

Найти первую и последнюю позицию элемента в сортированном массиве

class Solution {
    public int[] searchRange(int[] array, int target){
      int[] index = {-1, -1};
      int start = 0;
      int end = array.length-1;
      while (start <= end) {
          int mid = start + (end - start) / 2;
          if (array[mid] >= target) end = mid - 1;
          else start = mid + 1;
          if (array[mid] == target) index[0] = mid;
      }

      // resetting the start and end
      start = 0;
      end = array.length-1;
      while (start <= end){
          int mid = start  + (end-start) / 2;
          if (array[mid] <= target) start = mid+1;
          else end = mid-1;
          if (array[mid] == target) index[1] = mid;
      }
      return index;
    }
}
Prabhu Kiran Konda

Найти первую и последнюю позицию элемента в сортированном массиве

class Solution {
    public int[] searchRange(int[] nums, int target){
        int[] ans = new int[2];
        ans[0] = searchElementIndex(nums, target, true);
        ans[1] = searchElementIndex(nums, target, false);
        return ans;
    }

    public int searchElementIndex(int[] nums, int target, boolean findFirstIndex){
        int index = -1;
        int start = 0;
        int end = nums.length-1;

        while (start <= end) {
            int mid = start + (end-start) / 2;

            if (findFirstIndex){
                if (nums[mid] >= target) end = mid-1;
                else start = mid+1;
            }else {
                if (nums[mid] <= target) start = mid+1;
                else end = mid-1;
            }
            if (nums[mid]==target) index = mid;
        }
        return index;
    }
}
Prabhu Kiran Konda

Ответы похожие на “Найти первую и последнюю позицию элемента в сортированном массиве”

Вопросы похожие на “Найти первую и последнюю позицию элемента в сортированном массиве”

Больше похожих ответов на “Найти первую и последнюю позицию элемента в сортированном массиве” по Java

Смотреть популярные ответы по языку

Смотреть другие языки программирования