第2章 算法的特性

2.4 算法的特性

为了能编写程序,必须学会设计算法。不要以为任意写出的一些执行步骤就构成一个有效且好的算法。一个有效算法应该具有以下特点:

  1. 有穷性 。一个算法应包含有限的操作步骤,而不能是无限的。

实际上,“有穷性” 往往指 “在合理的范围之内” 。如果让计算机执行一个历时 1000 年才结束的算法,这虽然是有穷的,但超过了合理的限度,人们也不把它视为有效算法。究竟什么算 “合理限度” ,由人们的常识和需要判定。

  1. 确定性 。算法中的每一个步骤都应当是确定的,而不应当是含糊的、模棱两可的。

算法的含义应当是唯一的,而不应当产生 “歧义性” 。所谓 “歧义性” ,是指可以被理解为两种(或多种)的可能含义。

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

一个算法也可以没有输入。

  1. 有一个或多个输出 。算法的目的是为了求解。“解” 就是输出。

算法的输出并不一定就是计算机的打印输出或屏幕输出,一个算法得到的结果就是算法的输出。没有输出的算法是没有意义的。

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

对于一般最终用户来说,他们并不需要在处理每一个问题时都要自己设计算法和编写程序,可以使用别人已设计好的现成算法和程序,只须根据已知算法的要求给予必要的输入,就能得到输出的结果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值