212算法的描述与设计_第1页
212算法的描述与设计_第2页
212算法的描述与设计_第3页
212算法的描述与设计_第4页
212算法的描述与设计_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

1、算法的描述与设计莆田五中 算法的描述与设计有一个牧羊人带着一头羊,一只狼和一颗大白菜准备过河,他找到一只很小的船,每次只能带一样东西过去,可是如果让狼与羊单独在一起,狼会吃羊,让羊与白菜单独在一起,羊会吃白菜,牧羊人应如何过河?要求:现在请同学们来设计一个方案,把3样东西安然无恙的带过河。问题一 思考1234这个方案总共有多少步? 哪几步顺序可以颠倒?通过以上例子,我们能不能总结出什么是算法? 【问题一】中,我们是用什么来描述算法的? 5算法还有其他的描述方法吗? 第三步:人和菜过河,人返回,留下菜; 过河方案牧羊人过河方案第二步:人和狼过河,人和羊返回,留下狼; 第一步:人和羊过河,人返回,

2、留下羊;第四步:人和羊过河。 算法就是解决问题的方法和步骤,而且步骤是有限的。在以后的编程中也要记住了,有些步骤是可以颠倒的,不影响程序的结果;但是有些一旦颠倒了那最终的结果也就全变了。算法的概念 算法 算法的描述方法算法的描述用自然语言描述算法用流程图描述算法用伪代码描述算法 例:求方程 ax + b = 0 的解。 自然语言用自然语言表达算法,就是把算法的各个步骤,依次用人们熟悉的自然语言表示出来。优点:容易理解缺点:书写较烦、不确定性、对复杂的问题难以表达准确、不能被计算机识别和执行自然语言描述 自然语言描述 S1:移项得 ax = - b ; S2:若a不等于0,则x=-b/a,结束

3、S3:若a=0,b=0,得x为任意值,结束; S4:否则输出x无实数解,结束;自然语言 流程图也称为程序框图,它是算法的一种图形化表示方法。优点:形象、直观、容易理解流程图描述程序框名称功能开始/结束算法的开始和结束输入/输出输入和输出信息处理计算与赋值判断条件判断流程线算法中的流向连接圈表示算法流向出口或入口连接点常用的“流程图”所用的基本符号 流程图描述流程图 伪代码伪代码是介于自然语言和计算机程序语言之间的一种算法描述。优点:简洁、易懂、修改容易缺点:不直观、错误不容易排查伪代码描述 伪代码描述输入 a , bIf a = 0 thenif b = 0 then输出x为任意值else输出x无实数解endElsex= -b/aEnd if伪代码描述 算法的特征1有穷性:执行步骤和每步执行时间都是有限的算法特征确定性:每一步都有确切的含义2输出:至少产生一个输出43输入:有零个或多个输入5可行性:原则上能精确运行 小结小结特征:有输入 确定性 有穷性 有输出 可行性 算法的描述用自然语言描述算法用流程图描述算法用伪代码描述算法算法解决问题的方法和步骤 一个问题,可能有多种算法 ,应该通过分析、比较、挑选一种最优的算法。一个好算法必须用到科学的方法 ,应该好好学习各学科

温馨提示

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

评论

0/150

提交评论