算法与计算机
‘壹’ 计算机中算法和程序有什么区别
摘要 (1) 两者定义不同。算法是对特定问题求解步骤的描述,它是有限序列指令。而程序是实现预期目的而进行操作的一系列语句和指令。
‘贰’ 计算机算法与程序的关系
这个关系复杂,几乎每个程序都与算法有关系,如果是学习C语言,算法很重要的
‘叁’ 什么叫算法什么叫计算机算法
一、算法是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。算法常常含有重复的步骤和一些比较或逻辑判断。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。
二、计算机算法是以一步接一步的方式来详细描述计算机如何将输入转化为所要求的输出的过程,或者说,算法是对计算机上执行的计算过程的具体描述。
‘肆’ 在计算机中,算法是指什么
计算机算法是以一步接一步的方式来详细描述计算机如何将输入转化为所要求的输出的过程,或者说,算法是对计算机上执行的计算过程的具体描述。
一个算法必须具备以下性质:
(1)算法首先必须是正确的,即对于任意的一组输入,包括合理的输入与不合理的输入,总能得到预期的输出。如果一个算法只是对合理的输入才能得到预期的输出,而在异常情况下却无法预料输出的结果,那么它就不是正确的。
(2)算法必须是由一系列具体步骤组成的,并且每一步都能够被计算机所理解和执行,而不是抽象和模糊的概念。
(3)每个步骤都有确定的执行顺序,即上一步在哪里;下一步是什么,都必须明确,无二义性。
(4)无论算法有多么复杂,都必须在有限步之后结束并终止运行;即算法的步骤必须是有限的。在任何情况下,算法都不能陷入无限循环中。
一个问题的解决方案可以有多种表达方式;但只有满足以上4个条件的解才能称之为算法。
(4)算法与计算机扩展阅读:
算法可大致分为基本算法、数据结构的算法、数论与代数算法、计算几何的算法、图论的算法、动态规划以及数值分析、加密算法、排序算法、检索算法、随机化算法、并行算法,厄米变形模型,随机森林算法。
算法可以宏泛的分为三类:
一,有限的,确定性算法 这类算法在有限的一段时间内终止。他们可能要花很长时间来执行指定的任务,但仍将在一定的时间内终止。这类算法得出的结果常取决于输入值。
二,有限的,非确定算法 这类算法在有限的时间内终止。然而,对于一个(或一些)给定的数值,算法的结果并不是唯一的或确定的。
三,无限的算法 是那些由于没有定义终止定义条件,或定义的条件无法由输入的数据满足而不终止运行的算法。通常,无限算法的产生是由于未能确定的定义终止条件。
‘伍’ 数学与计算机算法有什么关系
数学是基础学科,有丰富的数学基础可以对理解编程中的逻辑有帮助。
编程对不同的人有不同的意义:
对于一般的程序员就是代码的产出和可运行程序(数学在这里面并不是特别重要,更重要的是对各种框架的理解、熟练掌握、设计模式等)。
对于算法工程师来说,数学就很重要了(例如机器学习,密码学,计算机图形学等,当然这个对题主来说还太遥远)。
题主说的函数实际上就是为了实现目的的一种封装形式,而递归只是在函数中调用自身(当然需要终止条件)。
(5)算法与计算机扩展阅读:
计算机的三个主要特征
1、运算速度快:计算机内部电路能高速准确地完成各种算术运算。当今计算机系统的计算速度已达到每秒数万亿次运算,微机也可达到每秒一亿次运算,使大量复杂的科学计算问题得以解决。例如,计算卫星轨道、大型水坝和24小时的天气可能需要数年甚至数十年,而在现代,用电脑几分钟就可以完成。
2、计算精度高:科学技术的发展,特别是尖端科学技术的发展,对计算精度要求很高。计算机控制的导弹之所以能够准确命中预定目标,与计算机的精确计算是分不开的。一般的计算机可以有十几位甚至几十位数字(二进制)有效数字,其计算精度可以从千分之几到百万分之一,是任何计算工具都无法比拟的。
3、逻辑操作能力强:计算机不仅可以进行精确计算,还具有逻辑操作功能,可以对信息进行比较和判断。计算机可参与操作数据、程序、中间结果和最终结果保存,并可根据判断结果自动执行下一条指令,供用户随时调用。
‘陆’ 计算机算法是什么
计算机算法是以一步接一步的方式来详细描述计算机如何将输入转化为所要求的输出的过程,或者说,算法是对计算机上执行的计算过程的具体描述。
‘柒’ 如何看待计算机算法
计算机算法就是通过一定的步骤求解对应的问题。
因为计算机的资源有限,所以算法需要考虑计算的时间和需要的存储空间,也就是常说的时间复杂度和空间复杂度。
一个算法必须具备以下性质:
(1)算法首先必须是正确的,即对于任意的一组输入,包括合理的输入与不合理的输入,总能得到预期的输出。如果一个算法只是对合理的输入才能得到预期的输出,而在异常情况下却无法预料输出的结果,那么它就不是正确的。
(2)算法必须是由一系列具体步骤组成的,并且每一步都能够被计算机所理解和执行,而不是抽象和模糊的概念。
(3)每个步骤都有确定的执行顺序,即上一步在哪里;下一步是什么,都必须明确,无二义性。
(4)无论算法有多么复杂,都必须在有限步之后结束并终止运行;即算法的步骤必须是有限的。在任何情况下,算法都不能陷入无限循环中。