#1600. L2-15阶段复习与测试

L2-15阶段复习与测试

一、单选题 5题(每题 5分,共 25分)

第 1 题

下面代码实现了二分查找算法,在数组 arr 找到目标元素 target 的位置,则横线上能填写的最佳代码 是( )

{{ select(1) }}

  • int mid = left + (right - left) / 2;
  • int mid = left;
  • int mid = (left + right) / 2;
  • int mid = right;

第 2 题

对下面两个函数,说法错误的是( )

{{ select(2) }}

  • 两个函数的实现的功能相同。
  • 两个函数的时间复杂度均为O(n) 。
  • factorialA采用递归方式
  • factorialB采用递归方式。

第 3 题

若用二分法在[1, 100]内猜数,最多需要猜( )次。

{{ select(3) }}

  • 100
  • 10
  • 7
  • 5

第 4 题

小明爬楼梯,每次只能走 1 级或 2 级台阶。若楼梯共有 5 级,小明有多少种不同的走法? ( )

{{ select(4) }}

  • 5
  • 8
  • 13
  • 21

第 5 题

以下关于质因数的描述,哪一项是正确的?( ) {{ select(5) }}

  • 一个数的质因数一定比这个数小
  • 12 的质因数分解结果是 2×2×3
  • 所有合数的质因数至少有三个
  • 质因数可以包含合数

二、判断题 5 题(每题 5分,共 25分)

第 1 题

递推是一种通过已知的初始值和递推公式,逐步求解目标值的算法 ( )。

{{ select(6) }}

  • T
  • F

第 2 题

递归函数必须具有一个终止条件,以防止无限递归。( )

{{ select(7) }}

  • T
  • F

第 3 题

二分查找适用于对无序数组和有序数组的查找。 ( )

{{ select(8) }}

  • T
  • F

第 4 题

已知三个数分别为 120,168 和 252,判断“这三个数的最大公约数是 12”这一说法是正确的()

{{ select(9) }}

  • T
  • F

第 5 题

{{ select(10) }}

  • T
  • F