慕课 算法分析 第六章 知识梳理

目录

6.1

1合并排序的时间复杂度是O()

2分治法的适用条件是(    )。

3分治法的设计思想是大事化小,各个击破,分而治之。 

4每次都将问题分解为原问题规模的一半进行求解,称为二分法

5分治法一般在每一层递归上有分解、解决、合并三个步骤

6减治法是把一个问题转化成一个子问题来解决,从子问题的解得到原问题的解。

7分治法将原问题分解为若干个规模较小、相互独立、完全相同的子问题。

6.2

1减治法常见的形式有()

2二分法子问题独立而不相似的情况可以转化为相似子问题求解

3二分法子问题不独立的情况可以计算,但计算量大,一般使用动态规划计算。

4N个元素排序的时间复杂度不可能是线性时间。

5任何基于元素比较的排序算法的时间复杂度>=élogn!ù= Q(nlogn)

6.3

1二分搜索算法将分治的2个子问题减少为1个,时间复杂度由n降低为logn

2大整数乘法将分治的四个子问题减少为2个,时间复杂度由n2降低为n

3Strassen矩阵乘法将分治的8个子问题减少为7个,时间复杂度由n3降低为n^log7

4减少子问题的个数,可以降低分治算法的时间复杂度。

5存在O(n2.376 )时间的矩阵乘法分治算法

6.4

1改进分治的均衡度,就是减少时间复杂度函数T(n)=aT(n/b)+f(n) 中的()值。

2随机快速排序的时间是O(n^2)

3给定n个元素,找其中位数的时间是O(n)

4给定n个元素,使用分治算法找k小元素,如果保证分治的两个子数组中最小的数组是原数组的ε倍,时间复杂度可以由nlogn降低为n.    0<ε<1.

6.5

1减少合并时间,就是减少时间复杂度函数T(n)=aT(n/b)+f(n) 中的()值。 

2最接近点对问题的时间复杂度为()

3最接近点对问题将合并的时间从n^2减少为n,从而将算法的时间复杂度由n^减少为nlogn

4计数逆序问题将合并计数逆序的时间由n^2减少为n,从而将算法的时间复杂度由n^2减少为nlogn。


6.1

1合并排序的时间复杂度是O()

正确答案:B你选对了

  • A.n

  • B.nlogn

  • C.n^2

  • D.logn

2分治法的适用条件是(    )。

  • A.问题可以分解为规模较小的子问题

  • B.小规模子问题可解

  • C.子问题可合并为问题的解 

  • D.子问题相互独立

正确答案:A、B、C、D你选对了

3分治法的设计思想是大事化小,各个击破,分而治之。 

  • A.√

  • B.×

正确答案:A你选对了

4每次都将问题分解为原问题规模的一半进行求解,称为二分法

  • A.√

  • B.×

正确答案:A你选对了

5分治法一般在每一层递归上有分解、解决、合并三个步骤

  • A.√

  • B.×

正确答案:A你选对了

6减治法是把一个问题转化成一个子问题来解决,从子问题的解得到原问题的解。

  • A.√

  • B.×

正确答案:A你选对了

7分治法将原问题分解为若干个规模较小、相互独立、完全相同的子问题。

  • A.√

  • B.×

正确答案:B你选对了

6.2

1减治法常见的形式有()

  • A.减一个常量 

  • B.减一个常量因子

  • C.减可变规模

  • D.减合并时间

正确答案:A、B、C你选对了

2二分法子问题独立而不相似的情况可以转化为相似子问题求解

  • A.√

  • B.×

正确答案:A你选对了

3二分法子问题不独立的情况可以计算,但计算量大,一般使用动态规划计算。

  • A.√

  • B.×

正确答案:A你选对了

4N个元素排序的时间复杂度不可能是线性时间。

  • A.√

  • B.×

正确答案:B你选对了

5任何基于元素比较的排序算法的时间复杂度>=élogn!ù= Q(nlogn)

  • A.√

  • B.×

正确答案:A你选对了

6.3

1二分搜索算法将分治的2个子问题减少为1个,时间复杂度由n降低为logn

  • A.√

  • B.×

正确答案:A你选对了

2大整数乘法将分治的四个子问题减少为2个,时间复杂度由n2降低为n

  • A.√

  • B.×

正确答案:B你选对了

3Strassen矩阵乘法将分治的8个子问题减少为7个,时间复杂度由n3降低为n^log7

  • A.√

  • B.×

正确答案:A你选对了

4减少子问题的个数,可以降低分治算法的时间复杂度。

  • A.√

  • B.×

正确答案:A你选对了

5存在O(n2.376 )时间的矩阵乘法分治算法

  • A.√

  • B.×

正确答案:A你选对了

6.4

1改进分治的均衡度,就是减少时间复杂度函数T(n)=aT(n/b)+f(n) 中的()值。

  • A.a

  • B.b

  • C.f(n)

  • D.n

正确答案:B你选对了

2随机快速排序的时间是O(n^2)

  • A.√

  • B.×

正确答案:B你选对了

3给定n个元素,找其中位数的时间是O(n)

  • A.√

  • B.×

正确答案:A你选对了

4给定n个元素,使用分治算法找k小元素,如果保证分治的两个子数组中最小的数组是原数组的ε倍,时间复杂度可以由nlogn降低为n.    0<ε<1.

  • A.√

  • B.×

正确答案:B你选对了

6.5

1减少合并时间,就是减少时间复杂度函数T(n)=aT(n/b)+f(n) 中的()值。 

  • A.a

  • B.b

  • C.f(n)

  • D.n

正确答案:C你选对了

2最接近点对问题的时间复杂度为()

  • A.n

  • B.nlogn

  • C.n^2

  • D.logn

正确答案:B你选对了

3最接近点对问题将合并的时间从n^2减少为n,从而将算法的时间复杂度由n^减少为nlogn

  • A.√

  • B.×

正确答案:A你选对了

4计数逆序问题将合并计数逆序的时间由n^2减少为n,从而将算法的时间复杂度由n^2减少为nlogn。

  • A.√

  • B.×

正确答案:A你选对了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值