算法是指解决问题的一种方法或一个过程。算法是若干指令的有穷序列,满足:输入、输出、确定性、有限性性质。程序是算法用某种程序设计语言的具体实现,程序可以不满足算法的性质。
算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。
算法中的指令描述的是一个计算,当其运行时能从一个初始状态和初始输入开始,经过一系列有限而清晰定义的状态,最终产生输出并停止于一个终态。一个状态到另一个状态的转移不一定是确定的。随机化算法在内的一些算法,包含了一些随机输入。
从计算机的角度讲,程序是用一种计算机能理解并执行的
计算机语言
描述解决问题的方法步骤。程序设计:是分析解决问题的方法步骤,并将其记录下来的过程。算法:解决问题的方法步骤。程序设计的关键就是将算法描述出来。那么程序是计算机能理解的并能执行的指令集;而算法只是一种解决问题的方法,是一种编程思想。数据结构课程里面的代码,都是
伪代码
,也就是说,用C
编译器
编译是通不过的,还要做很多的修改才可以,算法是编程的核心,算法出来了,我们就可以考虑用哪种语言实现比较简单,不一定要选C,我们学数据结构学的也就是一种思想,学会如何去解决问题,这才是最重要的,用C实现次之。在
数据结构C语言版
里面,我们只是将这种数据结构的 *** 作用伪C代码描述出来而已。
算法是处理解决问题的思路及办法,程序语言是按照一定语法把算法表达来。
算法是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。算法常常含有重复的步骤和一些比较或逻辑判断。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。
程序语言(programming language),是用来定义计算机程序的形式语言。它是一种被标准化的交流技巧,用来向计算机发出指令。一种计算机语言让程序员能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动。
区别:
一、形式不同
1、算法:算法在描述上一般使用半形式化的语言。
2、程序:程序是用形式化的计算机语言描述的。
二、性质不同
1、算法:算法是解决问题的步骤。
2、程序:程序是算法的代码实现。
三、特点不同
1、算法:算法要依靠程序来完成功能。
2、程序:程序需要算法作为灵魂。
算法与程序:
(1)一个程序不一定满足有穷性。例 *** 作系统,只要整个系统不遭破坏,它将永远不会停止,即使没有作业需要处理,它仍处于动态等待中。因此, *** 作系统不是一个算法。
(2)程序中的指令必须是机器可执行的,而算法中的指令则无此限制。
(3)算法代表了对问题的解,而程序则是算法在计算机上的特定的实现。一个算法若用程序设计语言来描述,则它就是一个程序
算法是处理解决问题的思路及办法,程序语言是按照一定语法把算法表达来。
打个比方,你头脑里有了一套新思想,一个新发现,你可以用中文写出来,也可以用英文写出来,让大家明白。思想和发现可以比作是算法,用中文或英文可以比作是程序语言。
因此核心是算法,但程序语言是实现算法的载体。在计算机等系统中,算法是处理某一问题的思路方法,而程序语言能具体表达算法从而使之运行起来通过算法需要完成的任务。
以上就是关于算法与程序的关系全部的内容,包括:算法与程序的关系、计算机数据结构课程里面,算法和程序的联系和区别是什么、算法和程序语言有何区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)