- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《算法设计与分析基础(第3版)》习题解答
绪论
第6页 习题1.1 5
SameElement( a[0..m-1],b[0..n-1] )
// find same elements in sorted array a[m] and b[n]
i=0;j=0;
While im and jn do
{
if ( a[i] b[j] )
j++
else if ( a[i]b[j] )
i++
else
{ couta[i];
i++;j++;
}
}
最大比较次数应该是,两个列表中没有相同的元素;并且a数组所有元素全部大于b数组元素,或a数组所有元素全部小于b数组时候,比较次数最大;
此时 最大比较次数应该是:m*n
实现程序
// same element
//#include stdafx.h
#includestdio.h
#includeiostream
using namespace std;
void main()
{
int a[]={ 2,5,5,5 };
int b[]={2,2,3,5,5,7};
int i=0,j=0,m=4,n=6;
while ( im jn )
{
if ( a[i] b[j] ) j++;
else if ( a[i]b[j] ) i++ ;
else
{ couta[i];;
i++;j++; }
}
cout\n;
}
第6页 习题1.1 6
gcd(31415,14142)= gcd(14142,31415 mod 14142)
=gcd(14142,3131)=gcd(3131,1618)
=gcd(1618,1513)=gcd(1513,105)
=gcd(105,43)=gcd(43,19)
=gcd(19,5)=gcd(5,4)
=gcd(4,1)=gcd(1,0)=1
由上述计算可以知道:
gcd运算次数= 11 次
Min(m,n)运算次数=14141次
倍数=14141/11=1286 倍
第14页 习题1.2 8
例如:排序问题,算法很多,有插入排序、冒泡排序、快速排序等等。
其中:快速排序性能较佳。
第20页 习题1.3 1
过程:S 输出:14 35 47 60 81 98
不稳定,因为当两数相等的时候,原排在前面的数,会移动到后面去
不在位,因为它需要额外的空间S.
第29页 习题1.4 1
将最后一个元素移到此位置。
// 将i后面的元素向前移一位。
该位置的元素置为一个不可能的字符。
//从第i个元素开始往后,将比他大的元素往前移一位,直到最后。
算法效率分析基础
第39页 习题 2.1 2
解答: a. 基本操作是加法运算,
以矩阵阶数来表示:f(n)= n2
若元素个数为m, 则以矩阵元素个数来表示:f(m)= m
b 对于矩阵乘法运算基本操作是乘法运算:
以矩阵阶数来表示:f(n)= n3
若元素个数为m, 以矩阵元素个数来表示:f(n)= m* ∠m
第39页 习题 2.1 3
解答: 有差异. 每次查找运算需要比较所有的元素,他的效率与经典顺序查找算法的最差效率相同。
第46页 习题 2.2 1
Q(n)
1
n/2
第46页 习题 2.2 2
a. T b. T c. F d. T
第46页 习题2.2 4
是的,
用极限的方法来证明。
第52页 习题2.3 4
a. 求和 ∑n2
b 基本操作是乘法运算
c 基本操作执行了 n次
d. 效率类型是 线性阶
e. 直接计算或许可以。
蛮力法
第79-80页
习题3.1 8 11
8.
原始顺序:A E(前) E(后) L M P X
选择排序结果:
E(前) X A M P L E(后)
选择排序过程:
E(前) X A M P L E(后)
A X E(前) M P L E(后)
A E(前) X M P L E(后)
A E(前) E(后) M P L X
A E (前)E(后) L P M X
A E(前) E(后) L M P X
A E(前) E(后) L M P X
A E(前) E(后) L M P X
11. 原始顺序:A E(前) E(后) L M P X
冒泡排序结果:
A E(前) E(后) L M P X冒泡排序过程:
E(前) X
文档评论(0)