算法和程序和算法的区别和联系有哪些区别呢?


算法是解决问题的步骤;程序是算法的代码实现算法要依靠程序来完成功能;程序需要算法作为灵魂程序是结果,算法是手段(为编写出好程序所使用的运算方法)。同样编写一个功能的程序,使用不同的算法可以让程序的体积、效率差很多。所以算法是编程的精华所在。算法 数据结构=应用程序。算法是程序设计的核心,算法的好坏很大程度上决定了一个程序的效率。一个好的算法可以降低程序运行的时间复杂度和空间复杂度。先选出一个好的算法,再配合以一种适宜的数据结构,这样程序的效率会大大提高。算法和程序都是指令的有限序列 ,但是:程序是算法,而算法不一定是 程序。区别主要在于:(1) 在语言描述上,程序必须是用规定的程序设计语言来写,而算法很随意;(2) 在执行时间上,算法所描述的步骤一定是有限的,而程序可以无限地执行下去。算法是对特定问题求解步骤的描述,它是指令的有限序列。简单算法举例例:求 1*2*3*4*5步骤 1 :先求 1*2 ,得到结果 2 。步骤 2 :将步骤 1 得到的乘积 2 再乘以 3 ,得到结果 6 。步骤 3 :将步骤 2 得到的乘积 6 再乘以 4 ,得到结果 24 。步骤 4 :将步骤 3 得到的乘积 24 再乘以 5 ,得到最后结果 120 。算法与程序设计知识点总结1. 算法的概念及特点。(1)复述算法的概念:解决某一问题的具体的、有限的方法和步骤(2)解释算法的主要特点: 有穷性(步骤是有限的)、确定性(每个步骤有确切的含义)、可行性(每个步骤是可行的)、有0个或多个输入和有一个或多个输出。(3)描述用算法解决问题的一般过程: 计算机解决问题的一般过程:分析问题(确定要计算机做什么)、寻找解决问题的途径和方法(解决怎么做)和用计算机进行处理 用算法解决问题的一般过程:需求分析(做什么)、确定算法(主要是人怎么做) 编写程序(计算机怎么做)及上机调试和维护(做得更好)2. 算法的描述方法;流程图的绘制方法;用流程图来描述算法。(1)列举算法的描述方法(用自然语言描述、流程图描述、程序语言和伪代码描述);(2)列举常用的流程图符号及出入口数起止框、输入输出框、处理框、判断框、流程线3. 常量和变量的区别。(1) 复述常量和变量的概念;常量:相当于数学中的常数,在程序运行中不会改变值的量变量:相当于函数中的变量,在程序运行中可以改变值的量(2) 列举数据的基本类型(整型、实数型、字符型、逻辑型等);整 型:相当于整数或用来存放整数的变量; 实数型:相当于实数或用来存放实数的变量; 字符型:非数据值型的数据(判断:一般不能用来加、减、乘、除的)如姓名、学号、电话号码、身份证号等 逻辑型:用关系运算符和逻辑运算符连接的数据,只有真(1)和假(0)二种结果比较变量名和变量值的区别:Max=5:变量名为Max,其值是5;A(1)=9:A(1)是下标变量4. 变量的作用和特点;设置和使用变量。(1) 描述变量的基本作用和特点:作用保存数据;特点:取之不尽,一充就掉。(2) 列举变量命名的基本规则:英文字母开头,后面跟字母或数字或下划线,系统保留字不能用(3) 使用赋值语句对变量进行赋值;LET 变量名=表达式,先计算表达式,后将结果赋值给左边的变量,一般LET省略5. 运算符、运算的优先次序、表达式。(1)列举各类运算的运算符及运算规则(算术、字符、关系、逻辑); 算术运算符: 、-、*(乘)、/(除)、^(乘方)、mod(a mod b求a÷b的余数) 字符运算符: (连接符)”I am ” ”No.1”→”I am No.1” 关系运算符:》、《、=、《》(不等于)、≥(书写时应写成》=)、≤ 逻辑运算符:NOT(非/取反)、AND(与/并且/相当于乘法)、OR(或/相当于加法)(2)区分各类运算符的优先级; 算术运算:( )→函数→乘方→*、/→mod→ 、-逻辑运算:( )→NOT→AND→OR 关系和逻辑运算的结果只有真和假,教材上约定真为1,假为0 先算术运算→字符→关系→逻辑(4) 列举常用的表达式类型:也分为算术、字符、关系和逻辑表达式四种#p##e#算法的三种结构算法的结构特点。(1) 描述顺序结构的特点:各个操作步骤严格按照先后次序执行一次(2)描述分支结构的特点:执行到某一操作时,会根据判断的结果选择二条分支中的一条分支执行,也 称选择结构;流程图中会出现判断框,又分单分支和双分支。(3)描述循环结构的特点:某些操作步骤会被连续地重复执行,因此又称重复结构;流程图中会出现上 跳分支。(4)解释循环结构中循环的要素(如:初始状态、循环体、循环条件等);控制循环的变量一般有初始值(初始状态)和终值(循环条件)2. 计数器、累加器、累乘器。(1) 识别计数器、累加器、累乘器的结构;(2)用流程图绘制计数器、累加器、累乘器。 计数器a:a=a 1(a的初值一般为0或1)或a=a-1(倒计数如10,9,8,7…) 累加器S:S=S 一个数(S的初值一般为 0) 累乘器T:T=T×一个数(初值一般为1)3. 分支的两种不同形式。(1)区分单分支与双分支结构描述分支结构的适用情况:执行到某一操作时,要根据判断的结果选择不同操作4.循环的两种不同形式。(1) 比较两种循环结构的区别(当型循环和直到型循环);(2) 描述当型循环的执行过程:先判断后执行循环体,循环体可能一次也不做(3)描述直到型循环的执行过程:先执行循环体后判断,循环体至少做一次4. 三种结构的组合。(1) 描述分支嵌套分支的执行过程:分支结构中又出现分支的结构(2) 描述循环嵌套分支的执行过程:循环结构中又出现分支的结构(3)描述循环嵌套循环的执行过程(双重循环):循环结构中又出现循环的结构算法实例1. 枚举算法。(1) 描述枚举算法的基本概念:列举每一种可能,并检验是否成立,也称穷举法(2) 列举枚举算法的基本特征:先列举,后检验(用分支结构实现检验)(3)描述枚举算法的基本实现方法:循环中嵌套分支2. 解析算法。(1) 描述解析算法的基本概念:用代公式的方法来计算结果的算法(2)列举解析算法的基本特征;(3)描述解析算法的基本实现方法:顺序或分支(4)描述解析算法的适用情况实现分支和循环结构的语句格式一、分支结构1.双分支结构1.单分支结构二、循环结构(连续的重复执行,又称重复结构)1. 当循环2.直到循环

我要回帖

更多关于 程序和算法的区别和联系 的文章

 

随机推荐