算法设计与分析北航研究生算法(2020精心整理-HJP)

VIP免费
2025-01-13 0 0 1.22MB 17 页 5.9玖币
侵权投诉
一:判断题
1、 一个正确的算法,对于每个合法输入,都会在有限的时间内输出一个满足要求的结果。×
2NP 完全问题比其他所有 NP 问题都要难。(错)
NP 问题分为 NP-hard 问题和 NP 完全问题,NP 完全问题是最难的,但是 NP-hard 问题又
包含 NP 完全问题。
错:NP 完全问题至少同其他所有 NP 问题一样难。
3、回溯法用深度优先法或广度优先法搜索状态空间树。(错,仅深度优先)
错:回溯法用深度优先法搜索状态空间树。
4、在动态规划中,各个阶段所确定的策略就构成一个策略序列,通常称为一个决策。(错)
错:在动态规划中,各个阶段所确定的决策构成一个决策序列,通常称为一个策略。
5P类和 NP 类问题的关系用 PNP 来表示是错误的。(错)
错:P中所有问题均属于 NP
P:存在求解判定问题 P1 的多项式时间算法。
NP:对 P1 的每一个肯定实例均存在一个多项式时间内的验证。(对一个实例为肯定实
例的证明称为该实例的证书。)
NPcomplete:P1 是一个 NP 问题,且 NP 中所有问题都可以多项式转化为 P1.
NPhardNP 中所有问题都可以多项式转化为 P1
NPhard 问题范围大于 NPcomplete 问题范围。
6、若近似算法 A求解某极小化问题一实例的解为 Sa,且已知该问题的最优解为 Sa/3,则该近似算法的性
能比为 3(错)
错:性能比是所有实例可能的精确率的上界。3只是这一实例的精确率,不是所有实例
的。
7、通常来说,算法的最坏情况的时间复杂行比平均情况的时间复杂性容易计算。(对)
8、若 P2 多项式时间转化为(polynomial transforms to)P1,则 P2 至少与 P1 一样难。(
错:应该是 p1 至少和 p2 一样难,有可能 p1 更难。
总是可以在可比时间内用 P1 的算法解决 P2,但不能说 P1 P2 一样难。事实上,有时
候可能 P2 简单而 P1 更难。
9、快速排序算法的平均时间复杂度O(nlogn)使用随机化快速排序算法可以将平均时间复杂度降得更
低。(错)
10、基于比较的寻找数组 A[1,…,n]中最大元素的问题下届是 Ω(n/3)(错)
:下界理论:问题的下界不唯一,越高越好。算法最优:下界=上界
几个问题的下界:
1) 排序问题:
Ω
(
n logn
)
2) 找最大:
Ω(n/2)
Ω(n1)
3) 找最大最小:
Ω(3n
22)
下界是用分治策略得到的结果:将数组均分成两部分
在每部分中找出最大值和最小值,在比较这两部分的最大值和最小值。
4) 找第二大元素:
Ω(n+logn2)
第一大元素需要比较 n-1 次,第一是通过
两配对比较中较大的元素中最大的元素,第二大元素师两两比较中第二大的元
素,再找到第二大元素需要 logn-1 次比较,加在一起得到如上结果。
11O(f(n))+O(g(n))=O(min{f(n),g(n)})(错)
错。应该是 maxO代表的是算法的上界。
12、若 f(n)=Ω(g(n))g(n)=Ω(h(n)),则 f(n)=Ω(h(n))(对)
对:
Ω
相当于小于等于。
13、若 f(n)=O(g(n)),则 g(n)=Ω(f(n))(对)
对:O相当于大于等于。
14、贪婪技术所做的每一步选择所产生的部分解,不一定是可行性的。(
错:贪心算法每一步必须满足:可行的(即它必须满足问题的约束)、局部最优、不
可撤销。
贪心算法通常包含一个用以寻找局部最优解的迭代过程,在某些实例中这些局部最优
解转变成了全局最优解,而在另外一些实例中则无法找到全局最优解。
15LasVegas 算法只要给出解就是正确的。(对)
16、一个完全多项式近似方案是一个近似方{Aε},其中每一个算法 在输入实I的规模的多项式时间
内运行。(错)
错:题目中定义的是多项式近似方案。
全多近似一个方案
{Aε}
其中个算
输入
I
规模
1/ε
两者的多项式时间内运行
二:简答
1、 二叉查找树属于减治策略的三个变种中的哪一个的应用?什况下二叉查找树表出最
时的查找和入算法的复杂性如
答:减治策略有 3的变种,减常减可变规模 (1) 二叉查找树属于减可变
模变种的应用。(2) 当先后插入的关键字有序时,构成的二叉查找树变为单树,树的深度等于 n
二叉查找树表出最率,(3) 查找和入算法的时间率都属于 Θ(n)
1.1)属于减可变规模的应用。2)当关键字的个数等于二叉查找树的高度时表出最率。时间
复杂度为 O(n)3时查找和入算法在最坏情况(查找当序列的最大值或者入最大值)的时间
复杂度都是 O(n)
1.二叉查找树属于减治策略中的减的规模是可变的。当二叉查找树是严格歪斜的时候,
率最时的查找和率为
Θ(n)
1) 二叉查找树属于减治策略中减少可变规模变种中的应用
2) 当树的高度=节点个数-1,即树是一颗严格歪树时表出最
3时查找和入算法的时间复杂度为 O(n)
减治法的三种变种:
1) 减一个常
递归法求
an
;
入排序最坏
n2
平均
n2/4
快速排序+入排序
拓扑排序:减一
生成排序:减一 要求 1-n 的排序先求 1-n-1)的排序
生成子集:减一
2) 减一个常数因子
二分搜索
假币问题
瑟夫问题
3) 减可变规模
值查找:最O(n)
二叉查找树:O(n) 平均 O(logn)
变治的 3种类
1) 实例化简:变为同样问题的一个更简单或更方便的实例
排序:如果列表是有序的,多问题更容易求解。
-验数组中元素的唯一性:先对数组排序,连续元素,如果该数组有
相等的元素则一定有一对元素是相紧挨着杂度:排+素是
相同即 Onlogn+n=o(nlogn)
-查找数列表中出率最高的一个数:先对输入排序(之后有相等的数值都会
邻接在一起),求出该有序数组中邻接次数最多的等值元素。
斯消去n线性方程构成的 n联立方程组为一个等方程组,该方
程组有一个上三系数矩阵,该矩阵主角线下的元素都为 0.
LU 分解
AVL 树:把集合变为二叉树
-AVL 树是一二叉树,其中每个节点的平衡银子定义为该节点左子树和右子树的高
,这个平衡因子01-1.
2变表:变为同样实例的不同表
2-3 树:平查找树
排序
霍纳法则
进制幂
3) 问题化简:变为另一个问题的实例,这种问题的算法是已知的
最小公倍数:通过两数乘积与其最大约数之商求得
数极值:已知最小求最大,目标函数加负号
线性规划
简化为
2何谓伪多项式算法?如将一 Monte Carlo 算法转化为 Las Vegas 算法?
答:若一个数值算法的时间复杂度可以表示为输入数值 N的多项式,但其运行时间与输入数值 N的二进制
呈指增长关系,则称其时间复杂度为多项式时间。
Las Vegas 算法不会得到不正确的解。一拉斯维算法找到一个解,这个解就一定是正确解。但有时
拉斯维算法找不到解。
Monte Carlo 算法每次都能得到问题的解,但不证所得解的确性
转化:可以在 Monte Carlo 法给出的解上加一个验证算法,如果正确就得到解,如果错误就不能生成问
题的解,这样 Monte Carlo 算法便转化为了 Las Vegas 算法。
2.1项式时间算法是 NPC 的一种,存在复杂度是关于实例规模和实例所有值最大数
成多项式关系的算法。
2.多项式时间算法是一种算法,它在 L值的多项式时间内运行,其中 L是输入实例中的最
大数值。这是 PPT 的定义(百科多项式算法:若算法的时间复杂度可以表示
输入数值 N的多项式,则称其为多项式算法。)
1多项式算法是一种在 L值的多项式时间内运行的算法,其中 L是输入实例中的最
大数值
2Monte Carlo 算法每次都能得到问题,但Las Vegas
算法每一次不一定得到问题的解,只要得到解一定是正确的解。可以在 Monte
Carlo 个验,如确就如果就不题的
解,这样 Monte Carlo 算法便转化成了 Las Vegas 算法。
可以通过多次运Monte Carlo且满足每次运行时的随机选择都
独立,使产生正确解的率可以减到任意小,而转化为 Las Vegas
3、 构AVL 树和 2-3 树的要目的是什?它有什样的查找和入的率?
答:(1)当先后插入的关有序时,构成的二叉查找树变为单树,树的深度等于 n时二叉查找树
出最率,为了解决这一问题,可以构AVL 树或 2-3 树,使树的深度减小。一AVL 树要求它
的每个节点左右子树的高度不能12-3 树和 2-3-4 允许找树的单个包含一个元
素。(2) AVL 树在最况下,查找和操作率属Θ(lgn)2-3 树无论在平均情况下,
找和入的率都属于 Θ(log n)
3. AVL 树和 2-3 树能衡左右子树的高度,减少树的数,使得平均搜索率更高。
入和查找的时间复杂度均为 O(logn)
3.二叉查找树属于减治策略中的减的规模是可变的。当二叉查找树是严格歪斜的时候,
率最时的查找和率为
Θ(n)
1) 构AVL 树和 2-3 的目的是使右子树更加平,减小树数,使平均搜
率更高
避免2,树的情使以每左右
树的高度近,加查找和入的率。)
2) 他在最坏情况下入和查找的时间复杂度为 O(log2n)
40/1 包问题的一个多项式等(Polynomial Equivalent)的判定问题,说明为什是多项式
的。
答:0/1 包问题:M件物品中,出若干件放在空间为 W,给出一个能得最大值的方案。
件物品体积W1W2……Wn,与相对应的值为 P1,P2……Pn+
判定问题 IM件物品中,出若干件放在空间为 W,是存在一个方案,所获价P*?。
件物品体积W1W2……Wn,与相对应的值为 P1,P2……Pn
若判定问题 I存在多项式时间的解法,则用该算法就可以在多项式时间内解决 0/1 包的优化问题
而这个判定问题与问题多项式等
0/1 包问题的一个多项式等判定问题是数划分问题。
证明:1.包优化问题可以多项式转化为包判定问题。可以包优化问题的最优
摘要:

一:判断题1、一个正确的算法,对于每个合法输入,都会在有限的时间内输出一个满足要求的结果。(×)2、NP完全问题比其他所有NP问题都要难。(错)NP问题分为NP-hard问题和NP完全问题,NP完全问题是最难的,但是NP-hard问题又包含NP完全问题。错:NP完全问题至少同其他所有NP问题一样难。3、回溯法用深度优先法或广度优先法搜索状态空间树。(错,仅深度优先)错:回溯法用深度优先法搜索状态空间树。4、在动态规划中,各个阶段所确定的策略就构成一个策略序列,通常称为一个决策。(错)错:在动态规划中,各个阶段所确定的决策构成一个决策序列,通常称为一个策略。5、P类和NP类问题的关系用P⊂NP来...

展开>> 收起<<
算法设计与分析北航研究生算法(2020精心整理-HJP).docx

共17页,预览4页

还剩页未读, 继续阅读

声明:本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。玖贝云文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知玖贝云文库,我们立即给予删除!
分类:计算机 价格:5.9玖币 属性:17 页 大小:1.22MB 格式:DOCX 时间:2025-01-13

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 17
客服
关注