Ⅰ 简述算法的概念及其特性,如何表示一个算法
通俗的讲,算法是指解决问题的方法或者过程,但是严格的讲算法是满足以下性质的指令序列:
1 输入:有零个或者多个外部量作为算法的输入
2输出:算法产生至少一个量作为输出
3确定性:组成算法的每条指令时清晰的,无歧义的
4又穷性:算法中的每条指令的执行次数有限,执行每条指令的时间也是邮箱的。
至于说如何表示算法,算法只是一种解决问题的思想与具体的计算机语言无关,深入理解思想之后我想你如果学习了一门编程语言,就算是脚本语言,你可以实现算法的。
Ⅱ 什么叫算法什么叫计算机算法
算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。
算法中的指令描述的是一个计算,当其运行时能从一个初始状态和(可能为空的)初始输入开始,经过一系列有限而清晰定义的状态,最终产生输出并停止于一个终态。一个状态到另一个状态的转移不一定是确定的。随机化算法在内的一些算法,包含了一些随机输入。
特征
一个算法应该具有以下五个重要的特征:
有穷性(Finiteness)算法的有穷性是指算法必须能在执行有限个步骤之后终止;
确切性(Definiteness)算法的每一步骤必须有确切的定义;
输入项(Input)一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件;
输出项(Output)一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的;
可行性(Effectiveness)
算法中执行的任何计算步骤都是可以被分解为基本的可执行的操作步,即每个计算步都可以在有限时间内完成(也称之为有效性)。
例1:输入矩形的边长,计算并输出矩形面积
输入矩形的边长a和b
面积s=a*b
输出s的值,算法结束
例2:交换两个变量a和b的值
输入两个数a和b
t=a;
a=b;
b=t;
输出变量a和b的值,算法结束
例3:输入3个任意的整数,按从小到大的顺序输出这三个整数
输入三个数a、b和c
如果a>b,就交换a、b的值
如果a>c,就交换a、c的值
如果b>c,就交换b、c的值
输出a、b、c的值,算法结束
例4:输入一个正整数n,输出1+2+3+...+n的和
1)输入n的值
2)s=0;
3)i=1;
4)s=s+i;
5)如果i<n,则i=i+1,转步骤4)
6)输出s的值,算法结束
例5:输入两个正整数a和b,输出它们的最大公约数
1)输入两个数a和b
2)r=a%b;
3)如果r=0,转步骤7)
4)a=b;
5)b=r;
6)转步骤2)
7)输出b的值,算法结束
Ⅲ 算法的概念
算法(Algorithm)是解题的步骤,可以把算法定义成解一确定类问题的任意一种特殊的方法。在计算机科学中,算法要用计算机算法语言描述,算法代表用计算机解一类问题的精确、有效的方法。算法+数据结构=程序,求解一个给定的可计算或可解的问题,不同的人可以编写出不同的程序,来解决同一个问题,这里存在两个问题:一是与计算方法密切相关的算法问题;二是程序设计的技术问题。算法和程序之间存在密切的关系。
算法是一组有穷的规则,它们规定了解决某一特定类型问题的一系列运算,是对解题方案的准确与完整的描述。制定一个算法,一般要经过设计、确认、分析、编码、测试、调试、计时等阶段。
对算法的学习包括五个方面的内容:① 设计算法。算法设计工作是不可能完全自动化的,应学习了解已经被实践证明是有用的一些基本的算法设计方法,这些基本的设计方法不仅适用于计算机科学,而且适用于电气工程、运筹学等领域;② 表示算法。描述算法的方法有多种形式,例如自然语言和算法语言,各自有适用的环境和特点;③确认算法。算法确认的目的是使人们确信这一算法能够正确无误地工作,即该算法具有可计算性。正确的算法用计算机算法语言描述,构成计算机程序,计算机程序在计算机上运行,得到算法运算的结果;④ 分析算法。算法分析是对一个算法需要多少计算时间和存储空间作定量的分析。分析算法可以预测这一算法适合在什么样的环境中有效地运行,对解决同一问题的不同算法的有效性作出比较;⑤ 验证算法。用计算机语言描述的算法是否可计算、有效合理,须对程序进行测试,测试程序的工作由调试和作时空分布图组成。
Ⅳ 在计算机中,算法是指什么
算法(Algorithm)是对问题求解方法的精确描述
,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用
空间复杂度
与
时间复杂度
来衡量。
算法可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤。或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解决一类问题。
一个算法应该具有以下五个重要的特征:
1、
有穷性
:
一个算法必须保证执行有限步之后结束;
2、
明确性
:
算法的每一步骤必须意义明确;
3、
输入
:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定除了初始条件;
4、
输出
:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的;
5、
可执行性
:
所采用的算法必须能够在计算机上执行。
计算机科学家尼克劳斯-沃思曾着过一本着名的书《数据结构十算法=
程序》,可见算法在计算机科学界与计算机应用界的地位。
Ⅳ 简述算法的定义和特征以及它在c语言编程中如何使用的
一、什么是算法
算法是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。算法常常含有重复的步骤和一些比较或逻辑判断。如果一个算法有缺陷,或不适合于某个问题,执行这个算法将不会解决这个问题。不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。
算法的时间复杂度是指算法需要消耗的时间资源。一般来说,计算机算法是问题规模n 的函数f(n),算法执行的时间的增长率与f(n) 的增长率正相关,称作渐进时间复杂度(Asymptotic Time Complexity)。时间复杂度用“O(数量级)”来表示,称为“阶”。常见的时间复杂度有: O(1)常数阶;O(log2n)对数阶;O(n)线性阶;O(n2)平方阶。
算法的空间复杂度是指算法需要消耗的空间资源。其计算和表示方法与时间复杂度类似,一般都用复杂度的渐近性来表示。同时间复杂度相比,空间复杂度的分析要简单得多。
二、算法设计的方法
1.递推法
递推法是利用问题本身所具有的一种递推关系求问题解的一种方法。设要求问题规模为N的解,当N=1时,解或为已知,或能非常方便地得到解。能采用递推法构造算法的问题有重要的递推性质,即当得到问题规模为i-1的解后,由问题的递推性质,能从已求得的规模为1,2,…,i-1的一系列解,构造出问题规模为I的解。这样,程序可从i=0或i=1出发,重复地,由已知至i-1规模的解,通过递推,获得规模为i的解,直至得到规模为N的解。
Ⅵ 计算机算法的一般含义
所谓算法就是面对某些实际问题,把人想象的自然想法用计算机术语来表示出来
Ⅶ 计算机中算法的基本概念有哪些
计算机算法是以一步接一步的方式来详细描述计算机如何将输入转化为所要求的输出的过程,或者说,算法是对计算机上执行的计算过程的具体描述。一个算法必须具备以下性质:
(1)算法首先必须是正确的,即对于任意的一组输入,包括合理的输入与不合理的输入,总能得到预期的输出。如果一个算法只是对合理的输入才能得到预期的输出,而在异常情况下却无法预料输出的结果,那么它就不是正确的。
(2)算法必须是由一系列具体步骤组成的,并且每一步都能够被计算机所理解和执行,而不是抽象和模糊的概念。
(3)每个步骤都有确定的执行顺序,即上一步在哪里,下一步是什么,都必须明确,无二义性。
(4)无论算法有多么复杂,都必须在有限步之后结束并终止运行,即算法的步骤必须是有限的。在任何情况下,算法都不能陷入无限循环中。
一个问题的解决方案可以有多种表达方式,但只有满足以上4个条件的解才能称之为算法。
Ⅷ 计算机算法是什么意思讲什么东西的
计算机上有很多应用软件,软件都是编程人员编的,编程的时候需要程序预言。一句半句说不清楚,举个例子说吧,你想计算三个人的体重,方法有很多。可以先计算出三个人的体重,可以先找出体重最大的,再找次的,最后最轻的。也可以先把1和2比较,大的先拿出来,例如是2,再2和3比较,如果3比他大,那么剩下的就不用比了,因为3一定比1大。这两种方法都可以找出最大的和最小的,都是算法。里边还有更深奥的算法,就要要求你具备相当高的数学逻辑才能写出更快的程序。
Ⅸ 什么是算法算法的概念算法的特点都有哪些
1、算法概念:
在数学上,现代意义上的“算法”通常是指可以用计算机来解决的某一类问题是程序或步骤,这些程序或步骤必须是明确和有效的,而且能够在有限步之内完成.
2. 算法的特点:
(1)有限性:一个算法的步骤序列是有限的,必须在有限操作之后停止,不能是无限的.
(2)确定性:算法中的每一步应该是确定的并且能有效地执行且得到确定的结果,而不应当是模棱两可.
(3)顺序性与正确性:算法从初始步骤开始,分为若干明确的步骤,每一个步骤只能有一个确定的后继步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都准确无误,才能完成问题.
(4)不唯一性:求解某一个问题的解法不一定是唯一的,对于一个问题可以有不同的算法.
(5)普遍性:很多具体的问题,都可以设计合理的算法去解决,如心算、计算器计算都要经过有限、事先设计好的步骤加以解决.
Ⅹ 计算机算法是什么
计算机算法是以一步接一步的方式来详细描述计算机如何将输入转化为所要求的输出的过程,或者说,算法是对计算机上执行的计算过程的具体描述。