测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A29883. 给定一个长度为n的有序数组 nums ,其中所有元素都是唯一的。下面的函数返回数组中元素 target 的索引。int binarySearch(vector<int> &nums, int target, int left, int right) { if (left > right) { return -1; } int middle = left + ((right - left) / 2…

单选题 困难

题目描述

给定一个长度为n的有序数组 nums ,其中所有元素都是唯一的。下面的函数返回数组中元素 target 的索引。

int binarySearch(vector<int> &nums, int target, int left, int right) {

      if (left > right) {

            return -1;

      }

      int middle = left + ((right - left) / 2);

      if (nums[middle] == target) {

            return middle;

      }

      else if (nums[middle] < target) {

            return binarySearch(nums, target, middle + 1, right);

      }

      else

            return binarySearch(nums, target, left, middle - 1);

      }

}

int Find(vector<int> &nums, int target) {

      int n = nums.size();

      return binarySearch(nums, target, 0, n - 1);

}

关于上述函数,描述不正确的是(    )。

选项(单选)

上一题 下一题