
第7章算法与程序设计基础
第7章 算法与程序设计基础

什么是算法算法的基本特征及评价认识算法算法的描述工具典型算法介绍排序算法概述计算机语言程序设计基础高级语言程序的构成和执行算法与程序设计基础概述结构化程序设计程序设计方法面向对象的程序设计顺序结构选择结构结构化程序的基本结构循环结构思考与练习学习导图
学习导图

学习内容认识算法程序设计基础2程序设计方法3结构化程序的基本结构田老步练习
1 认识算法 2 程序设计基础 3 程序设计方法 学习内容 4 结构化程序的基本结构

1.认识算法算法与程序设计何谓算法学习内容算法描述常用算法应用示意
何谓算法 算法描述 常用算法 应用示意 1. 认识算法 学习内容 算法与程序设计

算法定义认识算法算法(algorithm):为解决一个问题而采取的方法和步骤称为算法,即描述解题的操作步骤。算法分类数值算法:数值运算(如:求方程的根、、成绩排列等)姓名排非数值算法:常用于事务管理(如:图书检索、序等)
算法(algorithm):为解决一个问题而采取的方法和 步骤称为算法,即描述解题的操作步骤。 数值算法:数值运算(如:求方程的根、成绩排列等) 非数值算法:常用于事务管理(如:图书检索、姓名排 序等) 算法分类 算法定义 认识算法

何谓算法算法特征有穷性一个算法必须保证执行有限步之后结束。确定性有0个或多个输入算法的每一步骤必须有确切的定义。有1个或多个输出可执行性算法中执行的任何计算步骤都是可以被分解为基本的可执行的操作步,即每个计算步都可以在有限时间内完成
有穷性 确定性 有0个或多个输入 有1个或多个输出 可执行性 ⚫ 一个算法必须保证执行有 限步之后结束。 ⚫ 算法的每一步骤必须有确 切的定义。 ⚫ 算法中执行的任何计算步骤都是可以被 分解为基本的可执行的操作步,即每个计 算步都可以在有限时间内完成。 算法特征 何谓算法

何谓算法算法评价算法设计应当满足具体问题的正确性需求,是评价一个算法优劣的时间复杂度(运行时最重要的标准。空间复杂皮执行算法在计算机上所花费的时间可读性健壮性
正确性 时间复杂度(运行时间) 空间复杂度(占用空间) 可读性 健壮性 算法评价 ⚫ 执行算法在计算机上所花费的时间 ⚫算法设计应当满足具体问题的 需求,是评价一个算法优劣的 最重要的标准。 何谓算法

何谓算法算法评价算法需要消耗的内存空间,主要包正确性输入的初括算法程序所占用的空间时间复杂度(始数据所占用的存储空间以及算法执行过程中所需要的空间空间复杂度(占月可读性一个算法可供人们阅读的容易程度,包括算法的书写、合命名等应便于阅读和交流健壮性一个算法对不合理数据输入的反应能力和处理能力
正确性 时间复杂度(运行时间) 空间复杂度(占用空间) 可读性 健壮性 ⚫ 一个算法可供人们阅读的容易程度,包 括算法的书写、命名等应便于阅读和交流。 ⚫ 一个算法对不合理数据输入的反应 能力和处理能力 算法评价 ⚫ 算法需要消耗的内存空间,主要包 括算法程序所占用的空间﹑输入的初 始数据所占用的存储空间以及算法执 行过程中所需要的空间。 何谓算法

算法描述认识算法用自然语言表示用流程图表示用N-S流程图表示用伪代码表示用计算机程序表示
算 法 描 述 用自然语言表示 用流程图表示 用 N-S 流程图表示 用伪代码表示 用计算机程序表示 认识算法

算法描述用自然语言表示类似于生活中的流水账,一步一步的顺序描述例如:每天从早晨到晚上的生活安排做每到菜的实施过程个人学习规划
⚫ 类似于生活中的流水账,一步一步的顺序描述。 例 如: 每天从早晨到晚上的生活安排 做每到菜的实施过程 个人学习规划 . . 用自然语言表示 算法描述