第10章问题求解的算法基础与程序设计10.1计算机求解问题过程10.2算法的概念10.3算法的分类、特性和评价方法10.4算法的三种结构10.5算法的表示10.6算法的发现10.7算法举例10.8程序设计基础
第10章 问题求解的算法基础 与程序设计 10.1 计算机求解问题过程 10.2 算法的概念 10.3 算法的分类、特性和评价方法 10.4 算法的三种结构 10.5 算法的表示 10.6 算法的发现 10.7 算法举例 10.8 程序设计基础
10.1计算机求解问题过程分析问题当拿到问题之后,我们不能马上就动手编程,而是要经历一个思考、设计、编程以及调试的过程,编写程序解决问题的建立模型过程一般包括5个步骤。(1)分析问题,即确定计算机要做什么实现自然语言的逻辑建模设计算法(2)建立模型,即将原始问题转化为数学模型编写程序(3)设计算法,即形式化地描述解决问题的途径和方法。(4)编写程序,即将算法翻译成计算机程序。调试测试程序(5)调试测试,即发现和修改程序运行过程中存在的错误图9-1问题求解过程图
10.1 计算机求解问题过程 当拿到问题之后,我们不能马上就动手编程,而是要经历一 个思考、设计、编程以及调试的过程,编写程序解决问题的 过程一般包括5个步骤。 (1)分析问题,即确定计算机要做什么,实现自然语言的逻辑建模。 (2)建立模型,即将原始问题转化为数学模型。 (3)设计算法,即形式化地描述解决问题的途径和方法。 (4)编写程序,即将算法翻译成计算机程序。 (5)调试测试,即发现和修改程序运行过程中存在的错误
10.2算法的概念简单地说,算法就是解决问题的一系列步骤。广义地说,为解决问题而采用的方法和步骤就是算法。算法是程序设计的基础,算法的质量直接影响程序运行的效率。程序是与机器兼容的算法的实现,在软件开发中,核心工作就是进行算法的设计算法是求解问题步骤的有序集合,它能够产生结果并在有限时间内结束
10.2 算法的概念 简单地说,算法就是解决问题的一系列步骤。广义 地说,为解决问题而采用的方法和步骤就是算法。 算法是程序设计的基础,算法的质量直接影响程序 运行的效率。程序是与机器兼容的算法的实现,在 软件开发中,核心工作就是进行算法的设计。 算法是求解问题步骤的有序集合,它能够产生结果 并在有限时间内结束
举一个简单的算法例子,假设求两个自然数m和n的最大公约数,通常使用辗转相除的欧几里得算法,算法描述如下:①对于已知两数m、n,使得m>n。②m除以n得到余数r。③若r=0,则n即为最大公约数,算法结束;否则继续进行下一步④令m一n,n一r,转到第②步。,以上算法描述了求解两个自然数中最大公约数的解题步骤,经过多次辗转相除,总会达到余数为0的情况,所以说算法会在有限步骤、有限时间内完成,并能输出相应结果
举一个简单的算法例子,假设求两个自然数m和n的最大公约 数,通常使用辗转相除的欧几里得算法,算法描述如下: ①对于已知两数m、n,使得m>n。 ②m除以n得到余数r。 ③若r=0,则n即为最大公约数,算法结束;否则继续进行下一步。 ④令m←n,n←r,转到第②步。 以上算法描述了求解两个自然数中最大公约数的解题步骤,经 过多次辗转相除,总会达到余数为0的情况,所以说算法会在 有限步骤、有限时间内完成,并能输出相应结果
10.3算法的分类、特性和评价方法IN10.3.1算法的分类10.3.2算法的特性10.3.3算法的评价方法
10.3 算法的分类、特性和评价方法 10.3.1算法的分类 10.3.2算法的特性 10.3.3算法的评价方法