算法的设计要求

一个优秀的算法应该具备的设计要求主要有以下几点:

  • 正确性
算法的正确性是指算法至少具有输入,输出和加工处理无歧义,并且可以正确反映问题的需求,以及正确得到问题的答案。
关于“正确”的理解一共有四个层次:
  1. 算法程序没有语法错误。
  2. 算法程序能够根据正确的输入的值得到满足要求的输出结果。
  3. 算法程序能够根据错误的输入的值得到满足规格说明的输出结果。
  4. 算法程序对于精心设计的,极其刁难的测试数据都能满足要求的输出结果。
第四点比较难,因为我们几乎不可能对所有的情况都逐一进行验证,所以,一般来说,能够满足前3条就是一个正确性比较好的算法了。
  • 可读性
算法设计的另一个目的是为了便于阅读,理解和沟通,如果写的代码只有你和上帝能看懂,那这个算法只能说明很失败,因为算法越难理解,就越难找到他的bug,对于调试和修改就更难了
  • 健壮性
当输入的数据不合法的时候,算法也能给出相关的处理,而不是产生异常或者莫名起码的错误。
  • 时间效率高和空间存储量低
    在满足以上几点以后,我们还可以考虑对算法程序进一步优化,尽量满足时间效率高和空间存储量低的需求。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值