GESP C++ 真题 · 逐题精解
首页C++五级真题 › 2024年12月 › 第11题

GESP 2024年12月 C++五级 单选题 第11题

C++五级单选题2024年12月第11题

所属知识点:复杂度分析 难度要求:掌握 考频:—

给定一个长度为 的有序数组 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);
}

正确答案:C

题目解析

问错误说法。二分递归的终止条件是 left>right,不包含目标时也会终止………

完整解析为会员内容二级及以上的逐题精讲需开通 VIP。一级解析全部免费。前往 GESPPASS 解锁

想系统刷完 GESP C++ 1~8 级真题,并查看每道题的逐题精讲?

进入 GESPPASS 开始练习