一、正确性
包括四方面:
- 没有语法错误
- 对于 合法的数据输入 能够产生满足要求的输出
- 对于 非法的数据输入 能够得出满足规格说明的结果
- 对于 特殊的数据输入 能够得出满足规格说明的结果
其中
非法的数据:比如输入的时间为负数,输入的距离为负数
特殊的数据:比如输入的除数为0
二、可读性
设计出来的算法要便于阅读、理解和交流。
原因如下:
- 晦涩难懂的算法往往隐含错误,不易被发现,难以调试和修改
- 方便和他人交流
- 方便日后自己或他人维护
三、健壮性
健壮性是指软件对于规范要求以外的输入情况的处理能力。
所谓健壮的系统是指对于规范要求以外的输入能够判断出这个输入不符合规范要求,并能有合理的处理方式。
即所谓的高手写的程序不容易死。
四、时间效率高和存储量低
即 时间复杂度 和 空间复杂度 低,即算法程序耗费的时间和占用的空间少