算法和程序的区别

算法

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

  • 算法首先必须是正确的,即对于任意的一组输入,包括合理的输入与不合理的输入,总能得到预期的输出。
  • 算法必须是由一系列具体步骤组成的,并且每一步都能够被计算机所理解和执行,而不是抽象和模糊的概念。
  • 每个步骤都有确定的执行顺序,即上一步在哪里;下一步是什么,都必须明确,无二义性。
  • 无论算法有多么复杂,都必须在有限步之后结束并终止运行;即算法的步骤必须是有限的。在任何情况下,算法都不能陷入无限循环中。

算法是解决一个问题的思路、步骤,每个步骤的执行都是有顺序的,并且这些步骤不可以无限循环下去

注意:算法不一定由计算机实现,手工也可以

程序

计算机程序是一组计算机能识别和执行的指令,可以无限执行下去。但算法不能无限执行下去

个人理解,有错误请指出来:

算法由代码编写出来运行就是程序,但程序不一定是算法,我们写的任何代码,只要能运行,都是程序,

  • 算法是正确的,总能得到预期的结果,但程序可以得不到预期的结果,比如说一个算法预期的结果是1,我们的程序输出是2,但这个还是个程序,因为这个程序能别计算机识别,执行。
  • 算法必须是由一系列具体步骤组成的,这个和程序一样,程序也是由具体步骤组成
  • 每个步骤都有确定的执行顺序,这个也是一样
  • 算法的步骤必须是有限的,这个和程序不一样了,比如说我们编一个死循环的代码,这个代码能被计算机识别、执行就是程序,但不是算法
  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值