- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法设计与分析(2011.07bvtc)题目
选择题
1、合并排序算法是利用( )实现的算法。
A、分治策略?? B、动态规划法?? C、贪心法??? D、回溯法
2、单源最短路经问题的Dijkstra算法是利用( )实现的算法。
A、分治策略?? B、动态规划法?? C、贪心法??? D、回溯法
3、下列是动态规划算法基本要素的是( )。
A、最优子结构 B、构造最优解 C、算出最优解 D、定义最优解
4、下列算法中通常以自顶向下的方式求解最优解的是(???????? )。
A、分治法 B、动态规划法 C、贪心法 D、回溯法
5、采用广度优先策略搜索的算法是( )。
A、分支界限法 B、动态规划法 C、贪心法 D、回溯法
6、采用深度优先策略搜索的算法是( )。
A、分支界限法 B、动态规划法 C、贪心法 D、回溯法
7、背包问题的贪心算法所需的计算时间为( )
A、O(n2n)???? B、O(nlogn)??? C、O(2n)????? D、O(n)
简答题
算法的五个重要特征是什么?
叙述分治算法和动态规划算法的基本思想,及求解过程。
贪心算法的基本思想。
试分析分支限界法和回溯法的不同点。
填空题
考虑下面的算法,回答问题:
int Find(int A[],int n,int k)
{for (int i=0;in;i++)
if(A[i]==k) break;
if(in) return i;
return -1;}
该算法实现的功能是什么?
该算法的基本操作是什么?
2、试分析如下算法段,并该算法的时间复杂度。
for(i=0;in;i++)
{for(j=0;ji;j++)
{for(k=0;kj;k++)
x=x+2;
}}
该算法的时间复杂度为T(n) =
给定如下算法,试分析其时间复杂度
count ← 0
while n=1
for j ← 1 to n
count ← count +1
end for
n ← n/2
end while
return count
该算法的时间复杂度为T(n)
试分析如下算法段的时间复杂度。
for(i=0;in;i++)
{ for(j=0;ji;j++)
{ for(k=0;kj;k++)
x=x+2;
}}
该算法的时间复杂度为
以下利用二分法求方程f(x)=x3+x2-1=0在[0,1]上的近似解。
解题步骤如下:
确定区间,验证f(a)0,f(b)0,给定精度e。
求区间的中点mid。
计算f(mid)=0,则mid就是函数的零点;
若f(a) ×f(mid)0,则令b=mid(此时零点ax0mid);
若f(mid) ×f(b)0,则令b=mid(此时零点midx0b);
若|a-b|e,则得到零点近似值a(或b)??否则重复2-4
请将该算法中未完成的部分填写完整。
Func(double a, double b, double c, double d, double x)//函数表达式
{return a*x*x*x+b*xx+c*x+d;}
FindRoot(double a, double b, double c, double d, double low,double high,double e)
{double mid=_______;
if(Func(a,b,c,d,mid)==0)
return ______;
while((high-low)=e)
{ mid = (low + high) / 2;
if(Func(a,b,c,d,mid)==0)
return mid;
if(Func(a,b,c,d,low) *(Func(a,b,c,d,mid)0)
high= _________;
else
low= _________;
}
return low;
已知下面的带权有向图,应用Dijkstra算法计算从源节点1到其它顶点的最短路径。要求制表说明详细的求解过程。
10↙①↘100
② ⑤
50↓ 10↗ ↑60
③ ← ④
迭代Sudist[2]dist[3]dist[4]dist[5]初代1234
活动安排问题:设有n个活动的集合E=[1,2,…,n],其中每个活动都要求使用同一资源,如演讲会场等,而在同一时间内只有一个活动能使用这一资源。每个活动i都有一个要求使用该资源的起始时间si和一个结束时间fi,且sifi,如果选择了活动i,则它半开时间区间[si,fi)内占用资源。若区间[si,fi)与区间
原创力文档


文档评论(0)