- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(算法分析与设计
《算法分析与设计》
学习中心:
专 业:
学 号:
姓 名:
作业练习一
一、名词解释
1、递归算法
2、程序
二、简答题
1、算法需要满足哪些性质?简述之。
2、简要分析分治法能解决的问题具有的特征。
3、简要分析在递归算法中消除递归调用,将递归算法转化为非递归算法的方法。
三、算法编写及算法应用分析题
1、冒泡排序算法的基本运算如下:
for i ←1 to n-1 do
for j ←1 to n-i do
if a[j]a[j+1] then
交换a[j]、a[j+1];
分析该算法的时间复杂性。
2、设计一个分治算法计算一棵二叉树的高度。
3、设计一个分治算法来判定给定的两棵二叉树T1 和T2 是否相同。
4、给出一个分治算法来找出n 个元素的序列中的第2大元素,并分析算法的时间复杂度。
作业练习二
一、名词解释
1、MST性质
2、子问题的重叠性质
二、简答题
1、简述动态规划算法求解的基本要素。
2、备忘录方法和动态规划算法相比有何异同?简述之。
3、贪心算法求解的问题主要具有哪些性质?简述之。
三、算法编写及算法应用分析题
1、设计求解如下最大子段和问题的动态规划算法。只需给出其递推计算公式即可。
最大子段和问题:给定由n 个整数(可能为负整数)组成的序列a1a2 … an,求该序列形如Σi≤k≤j ak的子段和的最大值。当所有整数均为负整数时定义其最大子段和为0。依次定义,所求的最优值为max{0, max1≤i≤j≤n Σi≤k≤j ak }。
2、关于多段图问题设G=(,E)是一个赋权有向图,其顶点集被划分成个不相交的子集,其中,和分别只有一个顶点称为源和一个顶点称为汇,图中所有的边,。求由到的最小成本路径。
3、最优二元归并问题:已知将两个分别包含 a 个和b 个记录的已分类文件归并在一起得到一个分类文件需作a+b 次记录移动。现有n 个已分类文件F1,F1,?,Fn,它们的记录个数分别为l1, l2,?, ln。现在考虑使用二元归并模式将这n 个文件归并成一个分类文件,要求记录移动次数最少。设计一个贪心算法来求解一种最优的二元归并(即记录移动次数最少的二元归并)。
4、带限期的作业调度问题:n 个作业需要在一台机器上处理,每个作业可在单位时间内完成。每个作业i 都有一个截止期限di0(di 为整数),当且仅当作业i 在它的截止期限之前被完成,获得pi0 的效益。一种可行的调度方案为n 个作业的一个子集J,其中J 中的每个作业都能在各自的截止期限内完成。该可行调度方案的效益是J 中作业的效益之和。试设计贪心算法求效益最大的可行调度方案(即最优调度方案)。
作业练习三
一、名词解释
1、多机调度问题
2、优先队列式分支限界法
二、简答题
1、简述回溯法的基本思想。
2、简要分析分支限界法与回溯法的异同。
3、常见的分支限界法有哪些?简述之。
三、算法编写及算法应用分析题
1、分派问题一般陈述如下:给n 个人分派n 件工作,把工作j 分派给第i 个人的代价是COST(i,j)(非负实数)。要求设计一个回溯算法,在给每个人分派一件不同工作的前提下使得总代价最小。按照回溯法求解问题的基本步骤,请你完成几个任务:
① 给出解的一般形式,写出解空间。
② 以 n=4 为例画出表示解空间的状态空间树。并指出树中哪些结点是解结点?
③ 提出一个在深度优先搜索状态空间树时用于剪枝的剪枝函数(用文字描述)。
2、设计一个回溯算法来求解k-着色问题:给定无向图G=V,E, 要求使用k 种颜色来给图
中每个结点着色(每个结点使用k 种颜色之一),使得没有两个相邻的结点颜色相同。
① 给出解向量的形式,并画出当n=3,k=3 时的搜索树。
② 给出剪枝操作。
③ 最坏情况下你的算法在搜索树上会生成多少个结点?分析算法的时间复杂度。
3、对于下图使用Dijkstra算法
文档评论(0)