前言
近日受北京疫情影响居家办公,给自己充充电,刷一遍 邓俊辉老先生的算法与数据结构教程,纯属学习笔记,有总结不当的地方欢迎指正~
1.计算?
研究对象:规律,技巧
研究目标:高效,低耗
计算=信息处理
借助某种工具,遵照一定规律,已明确而机械的形式进行
计算模型=计算机+信息处理工具
所谓算法,特定计算模型下,旨在解决特定问题的指令序列
输入:待处理的信息
输出:经处理的信息
正确性: 的确可以解决指定的问题
确定性: 任一 算法 都可以没描述为一个基本操作组成的序列
可行性 : 每一个基本操作都可实现,且在常数时间内完成
有穷性: 对于任何输入,经过又穷次基本操作,都可以得到输出
1.1 算法 有穷性
对于任何的N,总有|H艾琳stone(n)|<∞?
1.2. 好算法?
正确:
健壮:能辨别不合法的输入并做适当处理,而不至非正常退出
可读: 结构化+准确命名+注释——。。。
效率:速度进可能的快 ,存储空间尽可能的少
2. 度量?
2.1 算法分析
两个方面 :
正确性 ;功能==要求?? 数学证明?
成本:时间成本+ 空间成本 如何度量
考察:
特定算法+不同算法
学以致用,推荐学习 邓俊辉 老教授的课程。