专转本计算机课件-算法评价_第1页
专转本计算机课件-算法评价_第2页
专转本计算机课件-算法评价_第3页
专转本计算机课件-算法评价_第4页
专转本计算机课件-算法评价_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大学计算机基础课程资源库算法评价难点讲解教学目标

算法评价对初学者来说较难掌握,本子库对算法评价的两个指标进行讲解。同一个问题求解可以有不同的算法,毫无疑问应当选择“好”的算法,“好”体现在算法效率上。评价一个算法好坏优劣主要有两个指标:

时间复杂度空间复杂度所谓时间复杂度是指依据算法编制成程序后,在计算机上运行所消耗的时间多少。所谓空间复杂度是指依据算法编制成程序后,在计算机上运行所消耗的空间大小。算法评价1)sum=sum+1;O(1)2)for(I=0;I<n;I++)sum++;O(n)3)for(I=0;I<n;I++)for(j=0;j<n;j++)sum++;O(n2)第一条语句时间复杂度是O(1),表示需消耗一个单位时间;第二条语句是循环语句,时间复杂度为O(n),表示需消耗n个单位时间;第三条语句是两重循环语句,时间复杂度为O(n2),表示需消耗n2个单位时间;用数量级来分析时间复杂度floata;O(1)floata[n];O(n)floata[n][n]O(n2)第一条语句的空间复杂度是O(1),表示需消耗一个单位空间第二条语句的空间复杂度是O(n),表示需消耗n个单位空间第三条语句的空间复杂度是O(n2),表示需消耗n2个单位空间用数量级来分析空间复杂度步骤1:计算(1+1000)1000/2,将结果再放入SUM中步骤2:输出(或显示)SUM的值

根据数学上可以推导出计算公式(1+1000)1000,通过计算公式来求解得出结果,这是完全可行的算法。具体伪代码和流程图算法描述如下:SUM=(1+1000)×1000/2开始输出SUM结束伪代码描述:计算1+2+3+••••••+1000伪代码描述:计算1+2+3+••••••+1000步骤1:计算(1+1000)1000/2,将结果再放入SUM中步骤2:输出(或显示)SUM的值

根据数学上可以推导出计算公式(1+1000)1000,通过计算公式来求解得出结果,这是完全可行的算法。具体伪代码和流程图算法描述如下:SUM=(1+1000)×1000/2开始输出SUM结束

下面按从前向后累加的计算方法来求解,就是从1开始反复加上计算式子中后面的整数,直到加上1000停止,具体流程图算法描述如右:开始SUM=0,I=1SUM=SUM+II=I+1输出SUM结束I≤1000成立不成立流程图描述:计算1+2+3+••••••+1000第一个算法最好,即时间复杂度和空间复杂度最优,时间复杂度为O(1)。空间复杂度为O(1)第二和第三个算法区别不

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论