算法分析与设计重点课后习题答案.doc

算法分析与设计重点课后习题答案.doc

ID:60729572

大小:63.00 KB

页数:12页

时间:2020-12-11

算法分析与设计重点课后习题答案.doc_第1页
算法分析与设计重点课后习题答案.doc_第2页
算法分析与设计重点课后习题答案.doc_第3页
算法分析与设计重点课后习题答案.doc_第4页
算法分析与设计重点课后习题答案.doc_第5页
资源描述:

《算法分析与设计重点课后习题答案.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、习题13.设计算法求数组中相差最小的两个元素(称为最接近数)的差。要求分别给出伪代码和C++描述。//采用分治法//对数组先进行快速排序//在依次比较相邻的差#includeusingnamespacestd;intpartions(intb[],intlow,inthigh){intprvotkey=b[low];b[0]=b[low];while(low=prvotkey)--high;b[low]=b[high];while(low

2、;b[high]=b[low];}b[low]=b[0];returnlow;}voidqsort(intl[],intlow,inthigh){intprvotloc;if(low

3、从第一个排到第n个}intmain(){inta[11]={0,2,32,43,23,45,36,57,14,27,39};intvalue=0;//将最小差的值赋值给valuefor(intb=1;b<11;b++)cout<

4、相等,设计算法找出a[n]中一个既不是最大也不是最小的元素,并说明最坏情况下的比较次数。要求分别给出伪代码和C++描述。#includeusingnamespacestd;intmain(){inta[]={1,2,3,6,4,9,0};intmid_value=0;//将“既不是最大也不是最小的元素”的值赋值给它for(inti=0;i!=4;++i){if(a[i+1]>a[i]&&a[i+1]

5、]>a[i+2]){mid_value=a[i+1];cout<usingnamespacestd;intmain(){doublevalue=0;for(intn=1;n<=10000;++n){value=value*10+1;if(value%2013==0){cout<<"n至少为:"<

6、{intS=0;for(inti=1;i<=n;i++)S=S+i*i;returnS;}(2)intQ(intn){if(n==1)return1;elsereturnQ(n-1)+2*n-1;}2.考虑下面的算法,回答下列问题:算法完成什么功能?算法的基本语句是什么?基本语句执行了多少次?算法的时间复杂性是多少?(1)完成的是1-n的平方和基本语句:s+=i*i,执行了n次时间复杂度O(n)(2)(2)完成的是n的平方基本语句:returnQ(n-1)+2*n–1,执行了n次时间复杂度O(n)3.分析以下程序段中基本语句的执行次数是多少,要求列出计算公式。(1)for(i

7、=1;i<=n;i++)if(2*i<=n)for(j=2*i;j<=n;j++)y=y+i*j;(2)m=0;for(i=1;i<=n;i++)for(j=1;j<=2*i;j++)m=m+1;(1)基本语句2*i1)retur

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。