内容正文:
认 识 算 法
1
知识回顾——计算机解决问题的步骤
步骤一
步骤二
步骤三
步骤四
步骤五
分析问题
设计算法
编写程序
运行程序
验证结果
问题解决
问题导入
一位农夫要带一只狼、一只羊和一棵白菜过河,如果没有农夫看管,狼就要吃羊,羊要吃白菜,但是船很小,所以农夫带一样东西过河。
想一想:
如果你是农夫,你应该怎样将狼、羊、白菜安全地运过河去呢?
第一步:农夫把羊先带过河,自己返回。
第二步:再把白菜带过河,同时把羊带回来。
第三步:把羊放下,然后把狼带过河,自 己回来。
第四步:最后把羊带过河。
问题导入
认识算法
算法(Algorithm)
算法就是解决问题的方法和步骤,即人们把进行某一工作的方法和步骤称为算法。“农夫过河”的求解过程就代表着一种算法。
小知识
“算法”(algorithm)一词是从9世纪阿拉伯数学家花拉子米(alKhwarizmi)的名字派生而来的。这位数学家的一生发现了许多求解算术问题的方法,并写了一本叫作《合并与回代》的书
名字来源
认识算法
算法的特点
1、有穷性。一个算法必须保证它的执行步骤是有限的,即它是能终止的,也就是说操作步骤不能是无限的。
2、可行性。算法中的每一个步骤都要足够简单,是实际能做的,而且能在有限的时间内完成。
认识算法
算法的特点
3、确定性。算法中的每个步骤必须有确切的含义,而不应当是含糊的、模棱两可的。
4、输人。一个算法有零个或多个输人,以刻画运算对象的初始情况。
5、输出。一个算法有一个或多个输出,以反映对输人数据加工后的结果,即没有输出的算法是毫无意义的。
算法的描述方法
方法一——用自然语言描述
自然语言是指人们日常生活中使用的语言,如汉语、英语、法语等都是自然语言。用自然语言描述算法符合我们的表达习惯,并且容易理解。
算法的描述方法
方法二——用流程图描述
流程图(Flow Chart)也称为程序框图,它是算法的一种图形化表示方法。与用自然语言描述算法相比,用流程图描述算法形象、直观,更容易理解。
优点:对于一些复杂的算法,直接编写代码很难保证程序的正确性,程序设计人员往往先用流程图描述算法,然后根据流程图就可以方便地写出程序代码了。
算法的描述方法
常用流程图符号
算法的描述方法
方法三——用伪代码描述
伪代码是介于自然语言和计算机程序语言之间的一种算法描述。它也是专业软件开发人员描述算法的一种常用方法。
使用伪代码描述算法没有严格的语法限制,书写格式也比较自由,只要把意思表达清楚就可以了,它更侧重于对算法本身的描述。
谢 谢
$