为什么程序是算法,而不是算法是程序?

作者&投稿:揣尚 (若有异议请与网页底部的电邮联系)
~

一、算法和程序的区别是:

1、在语言描述上不同:程序必须是用规定的程序设计语言来写,而算法很随意。

2、在执行时间上不同:算法所描述的步骤一定是有限的,而程序可以无限地执行下去。

3、两者定义不同:算法是对特定问题求解步骤的描述,它是有限序列指令。程序是实现预期目的而进行操作的一系列语句和指令。

4、两者的书写规定不同:程序必须用规定的程序设计语言来写,而算法很随意。算法是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。算法常常含有重复的步骤和一些逻辑判断。

二、算法与程序的联系:算法和程序都是指令的有限序列,但是程序是算法,而算法不一定是程序。程序=数据结构+算法。算法的主要目的在于为人们提供阅读了解所执行的工作流程与步骤。数据结构与算法要通过程序的实现,才能由计算机系统来执行。

扩展资料:

一、程序的运行

使计算机程序得以运行,计算机需要加载代码,同时也要加载数据。从计算机的底层来说,这是由高级语言(例如Java,C/C++,C#等)代码转译成机器语言而被CPU所理解,进行加载。

如果您在一个符合大多数的计算机上,操作系统例如Windows、Linux等,加载并执行很多的程序,在这种情况下,每一个程序是一个单独的映射,并不是计算机上的所有可执行程序。

为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可以被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。同一计算机程序的源程序和目标程序为同一作品。

二、算法:包括递推法、递归法、穷举法、贪心算法、分治法、动态规划法、迭代法、分支界限法、回溯法等。

大致分为基本算法、数据结构的算法、数论与代数算法、计算几何的算法、图论的算法、动态规划以及数值分析、加密算法、排序算法、检索算法、随机化算法、并行算法,厄米变形模型,随机森林算法。

参考资料来源:百度百科-程序

参考资料来源:百度百科-算法




计算机算法是指计算机程序
计算机算法是以一步接一步的方式来详细描述计算机如何将输入转化为所要求的输出的过程,或者说,算法是对计算机上执行的计算过程的具体描述。虽然算法与计算机程序密切相关,但二者也存在区别:计算机程序是算法的一个实例,是将算法通过某种计算机语言表达出来的具体形式;同一个算法可以用任何一种计算机语言来...

结构化思维与对象化思维有什么本质的不同?体现了怎样的思维差异_百度知 ...
思维差异体现在:1、面向对象分析则是采用了另一种自底向上的化解复杂性的方法:抽象。通过抽象,得到系统的一个简化模型,其中强调系统中某属性细节,而忽略其它的属性。2、结构化程序设计方法与分析方法思路相反,采用了自底向上的设计思想。首先设计底层模块,确定模块内部算法,设计模块内部程序,并进行...

C语言中什么叫算法,算法在程序设计中的重要作用
能采用递推法构造算法的问题有重要的递推性质,即当得到问题规模为i-1的解后,由问题的递推性质,能从已求得的规模为1,2,…,i-1的一系列解,构造出问题规模为I的解。这样,程序可从i=0或i=1出发,重复地,由已知至i-1规模的解,通过递推,获得规模为i的解,直至得到规模为N的解。 【问题】 阶乘计算 问题...

什么是计算机的算法?
包含了一些随机输入。形式化算法的概念部分源自尝试解决希尔伯特提出的判定问题,并在其后尝试定义有效计算性或者有效方法中成形。同一问题可用不同算法解决,而一个算法的质量优劣将影响到算法乃至程序的效率。算法分析的目的在于选择合适算法和改进算法。一个算法的评价主要从时间复杂度和空间复杂度来考虑。

什么叫精通C语言?精通C语言需要掌握哪些内容?
精通C语言就是想写什么程序就写什么程序,想到了算法之后就可以了。说了是精通,当然要掌握全部,运用自如,数据结构+算法=程序,算法就是≈过程,这个跟先天有点关系,而数据结构就是你学到的知识,学习C语言之前必须理解计算机基本硬件结构。

算法和程序设计有什么关系算法和什么的设计是程序设计
解答:1、算法和算法设计是程序设计。算法是指对解决方案的准确完整的描述,是解决问题的一系列清晰的指令。算法是描述解决问题的策略机制的系统方法。也就是说,对于某个标准输入,可以在有限的时间内获得所需的输出。2、如果一个算法有缺陷或者不适合某个问题,那么这个算法的实现就不能解决问题。不同...

程序设计主要内容是什么程序设计的主要内容
音频解说 程序设计主要内容是什么,程序设计的主要内容这个很多人还不知道,现在让我们一起来看看吧!解答:1、程序设计的主要内容算法和算法设计。算法是指对解决方案的准确、完整的描述,是解决问题的一系列清晰的指令。该算法是描述解决问题的策略机制的系统方法。2、编程是给程序解决特定问题的过程,是...

编程是什么?什么是程序设计?
程序设计(Programming)是指设计、编制、调试程序的方法和过程。它是目标明确的智力活动。由于程序是软件的本体,软件的质量主要通过程序的质量来体现,在软件研究中,程序设计的工作非常重要,内容涉及到有关的基本概念、工具、方法以及方法学等。程序设计通常分为问题建摸,算法设计,编写代码,编译调试和整理...

程序是什么?
脚本程序是一系列指令的集合,通常用于自动化和简化重复性任务。通过编写程序,我们可以控制计算机执行各种任务,从简单的计算到复杂的算法和处理大量数据,甚至是人工智能和机器学习等高级任务。词语历史来源:程序一词的历史来源相对较短,它起源于计算机科学的早期发展阶段。在计算机科学的早期,人们正在努力...

NP问题真的很难理解
日常生活中我们使用的各种五花八门的软件,其实都是一组计算机程序,而程序则可以看作是一系列算法,而我们看到的计算机的硬件的作用就是处理这些算法。这里的所说算法不只是简单的加减乘除,而是包括下面这些要素: 算术运算:加减乘除等运算 逻辑运算:或、且、非等运算 关系运算:大于、小于、等于、不等于等运算 数据传输...

准格尔旗18932351983: 什么是算法?什么是程序?这两者之间有什么关系? -
裔博门冬: 算法和程序嘛...对过程化程序来说,有个沃思公式:算法+数据结构=程序.也就是说一个程序主要包含以下两方面的信息:1、对数据的描述.在程序中要指定用到哪些数据以及这些数据的类型和数据的组织形式.这就是数据结构(data structure).2、对操作的描述.即要求计算机进行操作的步骤,也就是算法(algorithm).算法当然要在有穷步后终止啊,不然计算机受得了吗...算法的特性就包含有穷这一条,而且有穷性是指在合理的范围之内,你让一个算法持续几千年,也不合常理.希望对你有用.

准格尔旗18932351983: 算法与程序的区别与联系 -
裔博门冬: 算法与程序: (1).一个程序不一定满足有穷性.例操作系统,只要整个系统不遭破坏,它将永远不会停止,即使没有作业需要处理,它仍处于动态等待中.因此,操作系统不是一个算法. (2).程序中的指令必须是机器可执行的,而算法中的指令则无此限制. (3).算法代表了对问题的解,而程序则是算法在计算机上的特定的实现.一个算法若用程序设计语言来描述,则它就是一个程序.

准格尔旗18932351983: 算法与程序有何区别和联系? -
裔博门冬: 联系:程序是计算机指令的有序集合,是算法用某种程序设计语言的表述,是算法在计算机上的具体实现. 区别: 一、形式不同 1、算法:算法在描述上一般使用半形式化的语言. 2、程序:程序是用形式化的计算机语言描述的. 二、性质不同 1、算法:算法是解决问题的步骤. 2、程序:程序是算法的代码实现. 三、特点不同 1、算法:算法要依靠程序来完成功能. 2、程序:程序需要算法作为灵魂.

准格尔旗18932351983: 算法与程序的关系,对于一个任务书写算法对程序设计有哪些关系 -
裔博门冬: 算法是指逻辑层面上解决问题方法的一种描述,一个算法可以被很多不同的程序实现. 算法并不是程序或者函数本身. 一般来说,算法可以被计算机模拟出来,就是说可以被我们写程序写出来.程序只是一个手段,让计算机去机械式地执行,算法才是灵魂,驱动计算机“怎么去”执行. 举个例子,通向罗马的路有很多,有很多算法能通向罗马,而其中你选择的那一条路就是你的程序.希望你能理解.

准格尔旗18932351983: 何谓算法?它与程序有何区别? -
裔博门冬: 算法(Algorithm)是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出.如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题.不同的算法可能用不同的时间、空间或效...

准格尔旗18932351983: 算法的概念与程序的概念相同吗 -
裔博门冬: 不是,算法某种程度上来说是程序的实现方法,这两个概念都很泛,不好说

准格尔旗18932351983: 算法是什么?怎么写学
裔博门冬: 对于程序员来说,学习算法真的很重要.今天我就来给大家讲一讲到底什么是算法,如何更好的去学习算法.所谓算法指的是解决实际问题的一系列方法.很多人以为算法是一个新词汇,只和计算机有关系.其实算法的意识非常多久跟人类的生...

准格尔旗18932351983: 计算机算法的算法与程序 -
裔博门冬: 虽然算法与计算机程序密切相关,但二者也存在区别:计算机程序是算法的一个实例,是将算法通过某种计算机语言表达出来的具体形式;同一个算法可以用任何一种计算机语言来表达.算法列表 图论 路径问题0/1边权最短路径 BFS 非负边权...

准格尔旗18932351983: 为什么算法的有穷性是指算法程序的运行时间是有限的.而不是算法程序所处理的数据量是有限的. 如果 -
裔博门冬: 计算机是实用科学,数据量怎么可能是无穷的?算法说白了就是对输入进行处理然后输出结果,因此输入一定的数据(哪怕再大但也不会是无穷的),算法必须要在一定时间内产生输出,而不是无限制的运行下去,这是算法的有穷性.

准格尔旗18932351983: 程序和数据结构有什么关系? -
裔博门冬: 有一个定理楼主听说过吗,程序=数据结构+算法 数据结构就是告诉你数据是一和形式存储的,集合,线性表,树,还是图或网. 你要学好数据结构,才知道遇到什么问题用什么方法解决,才能编出好的程序. 下面是官方的说法: -------------------...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网