算法设计与分析的题目,求高手啊

证明:如果分治法的合并可以在线性时间内完成,则当子问题的规模之和小于原问题的规模时,算法的时间复杂性可达到O(n)。
这是关于分治法的题

第1个回答  2011-05-19
如何选择排序、矩阵相乘、树和图算法的时间复杂性计量单位?
排序:排序的循环次数(或递归次数)。
矩阵相乘:做实数乘法的次数。
树:搜索的次数。
图:同树。
算法有几种基本结构?各种结构的时间复杂度的计算规则?
3种
顺序结构:T(n)=O(c)
选择结构:T(n)=O(c)
循环结构:T(n)=O(n)
最坏情况下的时间复杂性和平均情况下的时间复杂性的定义?
在规模n的全部输入中,可以找寻执行一个算法所需的最大时间资源的量,这个量称为对规模n的输入,算法的最坏情况时间复杂性。
对规模都为n的一些有限输入集,执行算法所需的平均时间资源的量称为平均情况下的时间复杂性。
为什么选择时间复杂度的渐进性态评价算法?
因为在规模较小的时候无法客观体现一个算法的效率。
解释f(n)=O(g(n))的意义。
若f(n)和g(n)是定义在正整数集合上的 两个函数,则f(n)=O(g(n))表示存在正的常数C和n0 ,使得当n≥n0时满足0≤f(n)≤C*g(n)。
简述之就是这两个函数当整型自变量n趋向于无穷大时,两者的比值是一个不等于0的常数。
有效算法和无效算法的划分原则?
区分在于问题是否能够精确求解。
用分治法设计算法有什么好处?为什么描述分治算法需要使用递归技术?
分治法可以将问题分为许规模更小的子问题,这些子问题相互独立且与原问题相同。使用递归技术,虽然一些简单的循环结构替代之,但是复杂的问题,比如二阶递归是无法替代的。
归并排序算法和快速排序算法划分子问题和合并子问题的解的方法各是是怎样的?
归并排序算法:
划分子问题:每次分成2个大小大致相同的子集和
合并子问题:将2个排好序的子数组合并为一个数组
快速排序算法:对输入的子数组a[p:r]
划分子问题:划分为a[p:q-1],a[q]和a[q+1:r]使a[p:q-1]任意元素小于a[q],a[q+1:r] 任意元素大于a[q]
合并子问题:不需要(因为划分过程就已经排序完成了)
简述二分检索(折半查找)算法为什么比顺序查找的效率高?
对于二分搜索 最坏情况为O(logn)时间完成
而顺序查找 需要O(n)次比较
显然二分搜索效率高
贪心法的核心是什么?
贪心算法是通过一系列选择得到问题的解,它所作出的选择都是当前状态下的最佳选择。
背包问题的目标函数是什么?背包问题贪心算法的最优量度是什么?算法是否获得最优解? 用贪心算法解0/1背包问题是否可获得最优解?
Max=∑Vi*Xi (V是价值X取1,0表示装入或不装)
每次选取单位重量价值最高的
不一定是最优解

情况不妙啊 LZ还要继续否。。。
早知发邮件了。。。
追问

好像有些头绪了,
若f(n)和g(n)是定义在正整数集合上的 两个函数,则f(n)=O(g(n))表示存在正的常数C和n0 ,使得当n≥n0时满足0≤f(n)≤C*g(n)。
这个是不是关键点

第2个回答  2011-05-22
上面那个完全是照搬别人的嘛,问题也都不一样的。关键点在于子规模与合并这间的关系本回答被提问者采纳

迪杰斯特拉算法问题。算法设计与分析。题目看图,急急急,求大佬。
选取结点V1 S={V1(0),V2(20),V3(50),V4(30),V5(∞),V6(∞),V7(∞)}选取结点V2 S={V1(0),V2(20),V3(45),V4(30),V5(∞),V6(90),V7(∞)}选取结点V4 S={V1(0),V2(20),V3(45),V4(30),V5(85),V6(90),V7(∞)}选取结点V3 S={V1(0),V2(20),V3(45),...

请高手进来解答一下这道算法设计与分析的题目,谢谢了!!
} 由于输入的活动以其完成时间的非减序排列,所以算法greedySelector每次总是选择具有最早完成时间的相容活动加入集合A中。直观上,按这种方法选择相容活动为未安排活动留下尽可能多的时间。也就是说,该算法的贪心选择的意义是使剩余的可安排时间段极大化,以便安排尽可能多的相容活动。算法greedySelector...

会计算机科目算法设计分析的朋友帮帮忙啊 高分啊!!!
1、选C。==其实合并排序的定义是将两个(或两个以上)有序表合并成一个新的有序表,即把待排序序列分为若干个子序列。精确的答案应该是2个或以上。2、选C 3、分支定界法 回溯法 4、if n = 0 then fac := 1 (边界条件是所描述问题的最简单情况)很多知识也很生疏,如果有错误麻烦指出...

《算法设计与分析》。求大神帮帮忙。选择题?
这个看上去就是普通的数学题吧,因为x(1)=0,根据条件可知x(2)=5,所以只有选项D符合题意。另外感觉这个题和算法没有太大关系。。。

这条题来自《算法设计与分析》,求大神指教
T(n)=T(n-1)+n=T(n-2)+n-1+n=1+2+...+n=(n+1)*n\/2

[算法分析与设计]最优服务次序问题的答案_最优服务次序问题算法
因此,本题属于局部最优的设计问题,即为贪心算法。四、算法的流程图 第 五、算法设计分析 假设原问题的时间为T,已经知道了某个最优服务系列,最优解为min={t(1),t(2),...,t(n)}(其中t(i)为第i个客户需要的服务时间),那么每个客户需要的等待是时间为:T(1)=t(1);T(2)=t(1...

算法设计与分析总结(算法+题目+解析)
算法设计与分析总结 穷举法是算法设计基础,其核心思想是通过遍历所有可能的答案,根据条件筛选出合适的解。比如求1到100的素数,就是遍历每个整数并判断是否满足素数条件。百鸡问题演示了如何使用穷举法解决实际问题,通过设定限制条件,如鸡的数量不超过100,每种鸡的价值不超过总价格,来确定搜索范围。递归...

急需C语言高手帮助(算法设计与分析)
include <stdio.h> \/\/第一题 include <math.h> long count[10];void countNum(long a) \/\/递归计算 {long b;b=a%10;count[b]++;a=a\/10;if(a!=0)countNum(a);} void main(){int i;long j,page;for(i=0;i<10;i++)count[i]=0;puts("输入总页码数:");scanf("%ld",...

算法设计与分析考试题(自测)
1.一个算法就是一个有穷规则的集合,其中之规则规定了解决某一特殊类型问题的一系列运算,此外,算法还应具有以下五个重要特性:_有穷性__,_确定性_,_可行性_,_(0个或多个)输入__,_(1个或多个)_输出_。2.算法的复杂性有__时间复杂性__和__空间复杂性__之分,衡量一个算法好坏的标准...

算法设计与分析 试题求答案。。。 求解递归方程T(n)=5T( n\/3)+n...
T(n)=1\/10 ((2 c_1+15) 5^((log(n))\/(log(3)))-15 n)c_1是一个常数,需要初始值确定

相似回答