目录
1.一个好的算法所具备的特性
2.算法分析‐‐‐评价算法
3.算法复杂度
4.时间复杂度
如何统计在程序中统计算法执行语句数
5.空间复杂度
6.程序优化的最核心思路:
总结
1.一个好的算法所具备的特性
- 正确: 符合语法,能够编译、链接
- 能够正确处理简单的输入
- 能够正确处理大规模的输入
- 能够正确处理一般性的输入
- 能够正确处理退化的输入
- 能够正确处理任意合法的输入
- 健壮: 能辨别不合法的输入并做适当处理,而不会非正常退出
- 可读: 结构化 + 准确命名 + 注释 + ...
- 效率: 速度尽可能快;存储空间尽可能少
但!定性分析是不够的,需要进行定量计算。
所以需要引入理想、统一、分层次的尺度,运用该尺度,来测量算法的性能。
2.算法分析‐‐‐评价算法
正确性:算法功能与问题要求一致