计算机算法是什么?

如题所述

计算机算法是以一步接一步的方式来详细描述计算机如何将输入转化为所要求的输出的过程,或者说,算法是对计算机上执行的计算过程的具体描述。

【算法性质】

一个算法必须具备以下性质:

    算法首先必须是正确的,即对于任意的一组输入,包括合理的输入与不合理的输入,总能得到预期的输出。如果一个算法只是对合理的输入才能得到预期的输出,而在异常情况下却无法预料输出的结果,那么它就不是正确的。

    算法必须是由一系列具体步骤组成的,并且每一步都能够被计算机所理解和执行,而不是抽象和模糊的概念。

    每个步骤都有确定的执行顺序,即上一步在哪里;下一步是什么,都必须明确,无二义性。

    无论算法有多么复杂,都必须在有限步之后结束并终止运行;即算法的步骤必须是有限的。在任何情况下,算法都不能陷入无限循环中。

一个问题的解决方案可以有多种表达方式;但只有满足以上4个条件的解才能称之为算法。

【算法特点】

    有穷性。一个算法应包含有限的操作步骤,而不能是无限的。事实上“有穷性”往往指“在合理的范围之内”。如果让计算机执行一个历时1000年才结束的算法,这虽然是有穷的,但超过了合理的限度,人们不把他视为有效算法。

    确定性。算法中的每一个步骤都应当是确定的,而不应当是含糊的、模棱两可的。算法中的每一个步骤应当不致被解释成不同的含义,而应是十分明确的。也就是说,算法的含义应当是唯一的,而不应当产生“歧义性”。

    有零个或多个输入、所谓输入是指在执行算法是需要从外界取得必要的信息。

    有一个或多个输出。算法的目的是为了求解,没有输出的算法是没有意义的。

    有效性。 算法中的每一个 步骤都应当能有效的执行。并得到确定的结果。

参考资料

胡金初.计算机算法. 北京交通大学出版社: 北京交通大学出版社,2009年03月

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-07-10
一、算法是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。算法常常含有重复的步骤和一些比较或逻辑判断。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。二、计算机算法是以一步接一步的方式来详细描述计算机如何将输入转化为所要求的输出的过程,或者说,算法是对计算机上执行的计算过程的具体描述。算法是在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗点说,就是计算机解题的过程。在这个过程中,无论是形成解题思路还是编写程序,都是在实施某种算法。前者是推理实现的算法,后者是操作实现的算法。一个算法应该具有以下五个重要的特征: 1、有穷性: 一个算法必须保证执行有限步之后结束; 2、确切性: 算法的每一步骤必须有确切的定义; 3、输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定除了初始条件; 4、输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的; 5、可行性: 算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。算法的设计要求。
第2个回答  推荐于2018-07-10

在数学和计算机科学之中,算法为一个计算的具体步骤,常用于计算、数据处理和自动推理。精确而言,算法是一个表示为有限长列表的有效方法。


而程序算法是指:

人们使用计算机,就是要利用计算机处理各种不同的问题,而要做到这一点,人们就必须事先对各类问题进行分析,确定解决问题的具体方法和步骤,再编制好一组让计算机执行的指令即程序,交给计算机,让计算机按人们指定的步骤有效地工作。这些具体的方法和步骤,其实就是解决一个问题的算法。


例子:

如何用程序比较3个数字, 找出他们最大的那一个?

1) 输入A、B、C。

2) A与B中大的一个放入M A X中。

3) 把C与M A X中大的一个放入M A X中。

4) 输出M A X,M A X即为最大数。

这就是算法.


int max = a > b ? a : b;
max = max > c ? max : c;

最终max 中就是a,b,c中最大的值.

本回答被提问者和网友采纳
第3个回答  2018-07-10
把所有的信息全转换成二进制 也就是0和1
说白了 计算机的基础运行就是用开和关来控制微电路的运行
1表示开 0表示关
什么图片 文字 程序 最终都会通过转换器变成0和1
第4个回答  2014-03-19
是一种计算机解决某个问题的策略。这句话希望你好好理解下。