#P1358. Day4 二分查找边界训练(8题)

Day4 二分查找边界训练(8题)

第 1 题

标准二分查找最基本的使用前提是( )。

{{ select(1) }}

  • 数组有序
  • 数组元素互不相同
  • 数组长度是偶数
  • 必须使用递归

第 2 题

闭区间二分查找中,右端点的初始化应填什么?

int l = 0;
int r = ____;

{{ input(2) }}

第 3 题

闭区间二分查找中,循环条件应填什么?

while (____) {
	int mid = l + (r - l) / 2;
}

{{ input(3) }}

第 4 题

递增数组中 a[mid] < x 时,应填写哪条更新语句?

if (a[mid] < x)
	____;

{{ input(4) }}

第 5 题

递增数组中 a[mid] > x 时,应填写哪条更新语句?

if (a[mid] > x)
	____;

{{ input(5) }}

第 6 题

有序数组 1 3 5 7 9 11 13 中查找 11,第一次计算的 mid 下标是多少? {{ input(6) }}

第 7 题

承接上一题,第二次计算的 mid 下标是多少? {{ input(7) }}

第 8 题

二分查找的时间复杂度是( )。

{{ select(8) }}

  • O(1)O(1)
  • O(logn)O(\log n)
  • O(n)O(n)
  • O(n2)O(n^2)