全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
3 什么是算法? 算法的5个特性是什么? 试根据这些特性解释算法与程序的区别。解答:算法:为解决某一特定任务而规定的一个指令序列。算法的特性:(1) 有输入。一个算法必须有0个或多个输入。它们是算法开始运算前给予算法的量。这些输入取自于特定的对象的集合。它们可以使用输入语句由外部提供,也可以使用赋值语句在算法内给定。(2)有输出。一个算法应有一个或多个输出,输出的量是算法计算的结果。(3)确定性。算法的每一步都应确切地、无歧义地定义。对于每一种情况,需要执行的动作都应严格地、清晰地规定。(4)有穷性。一个算法无论在什么情况下都应在执行有穷步后结束。(5)有效性。算法中每一条运算都必须是足够基本的。就是说,它们原则上都能精确地执行,甚至人们仅用笔和纸做有限次运算就能完成。算法和程序不同,程序可以不满足上述的特性(4)。例如,一个操作系统在用户未使用前一直处于等待的循环中,直到出现新的用户事件为止。这样的系统可以无休止地运行,直到系统停工。此外,算法是面向功能的,通常用面向过程的方式描述;程序可以用面向对象方式搭建它的框架。4 指出下列各算法的功能并求出时间复杂度。31int Prime (int n) int i = 2; int x= (int) sqrt (n); while (i x) return 1; else return 0;解:功能:判断一个数是否为素数,若是,返回1;否则,返回0.时间复杂度:O(n1/2)(即:根号n)2int fun (int n) int i=1, s=1; while(s =n的最小i值。时间复杂度:O(n1/2)(即:根号n)3void UseFile(ifstream& inp, int c10) for(int i=0; i x) i=x%10; ci +; 解:时间复杂度:O(n)4void matable (int n) for(int i=1; i=n; i+) for(int j =i; j =n; j +) cout i* j = setw(2) i* j ; cout endl; 解:功能:打印出n行乘法表,第i行有n-i+1项乘积。 时间复杂度:O(n2)5void cmatrix(int aM N, int d) for(int i=0; iM; i+) for(int j =0; jN; j+) ai j* =d;功能:使数组aMN中每个元素的值都乘以d的值。时间复杂度:O(M*N)6void matrimult(int aM N, int bN L, int cM L) int i, j, k; for(i = 0; i M; i + ) for(j =0; j L; j +) cij =0; for(i = 0; i M; i + ) for(j =0; j L; j +) for(k= 0; k N; k+ ) cij +=aik *bkj;功能:矩阵相乘,即aMN*bNL = CML时间复杂度: O(M*N*L)7i=1;while(i=n) i=i*3; 解释:i是这样变化的:1, 3, 9, 27, . 如果用i(x)表示第x次循环时i的值,则 i(x) = 3x , x初始值为0。 循环在 i = n 的时候停止,即 i(x) = 3 x x= log3(n) 即循环结束时,最多进行了log3(n)次运算。按照大O表示法定义,它的复杂度为 O(log3(n), 即 O(lgn/lg3)8n是描述问题规模的非负整数,给出下面程序段的时间复杂度。(2011年考研计算机专业真题)x=2;while(x=n/2) x=x*2;功能:求小于n/2的最大的2的幂次方时间复杂度:O(n) = n 9while( in) for (j=1; j=n; j+) s=s+aij; i=i*2; 10n是3的倍数。for(i=1;i=n;i+) if(3*i=n)for(j=3*i;j=n;j+) y+=i*j; 11设n是偶数,运行下面的程序段后计算语句m=m+1的次数,并给出该程序段的时间复杂度。m=0;for(i=1; i=n; i+) for(j=2*i; j=0)阶乘的算法如下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 熟食净菜配送服务
- 科技企业租赁合同模板
- 化工企业计划生育承诺书样本
- 医学研究彩超机租赁合同
- 医院绿化带围墙施工协议
- 服务器租赁合作合同
- 城市交通信号暂行管理办法
- 烟草行业托盘租赁协议
- 生态农业科技园建设合同
- 教育信息化项目招投标要点解析
- 各专业文件准备目录-内分泌科药物临床试验机构GCP SOP
- 车间员工安全培训试题附参考答案【典型题】
- 2024年物业管理师(中级四级)考试题库大全-上(单选、多选题)
- 2024年人教部编版语文六年级上册期中测试题及答案(一)
- 《江西数学三年级上学期数学期中试卷》
- 2024年10月福建三明宁化县城市管理和综合执法局公开招聘非在编协管员11人笔试历年典型考点(频考点试卷)解题思路附带答案详解
- 2024年环保知识生态建设知识竞赛-环保基础知识竞赛考试近5年真题附答案
- 《万维网安全新协议》课件 2024-2025学年人教版新教材初中信息技术七年级全一册
- 2024中国邮政集团河北省分公司春季校园招聘高频难、易错点500题模拟试题附带答案详解
- (完整)马克思主义政治经济学习题及参考答案
- 语文苏教版七年级上册抓住物象 体会情感.ppt
评论
0/150
提交评论