如何评价一个计算机算法的好坏?

来源:百度知道 编辑:UC知道 时间:2024/05/21 16:22:26
谢谢高手指点!

简单,快速,高效,节省资源,可广泛应用,高兼容性

一般 是时间复杂度和空间复杂度。

时间复杂度:一般通过语句执行次数与输入规模之间的关系来比较。
空间复杂度:通过使用额外的内存空间来比较。

时间复杂度和空间复杂度也有一定的关系:
提高空间复杂度有利于减低时间复杂度,反之亦然。

然后,就需要根据环境不同,平衡这两者。
比如在嵌入式开发中,有时内存资源紧张,这时空间复杂度低的算法就可能是一个更好的算法。

推荐参考数据结构或算法入门书。

空间和时间
能用尽量最短的时间和最小的存贮空间完成算法,那就是好算法
但时间和空间是矛盾的,时间短必须牺牲比较多的存贮空间,反之亦然

1.是否能高效的使用主存和辅存
2.程序的运行时间是否令人满意
3.程序代码是否易读
4.是否根据逻辑关系分解成有效执行函数
5.程序是否正确
6程序是否符合任务的规范
7是否有配套文档说明原理和用法

简单地说,就是代码简洁、安全性高、占用的时间复杂度和空间复杂度小

正确性,可读性,健壮性,高效率和低存储量