算法分析是理论研究,是关于计算机程序性能(performance)和资源利用(resource usage)的研究。
More important than performents
模块化(耦合度越低越好)
正确性
可维护性
功能性
健壮性
用户友好
程序员时间成本
简洁
可扩展性
可靠性
算法的各种分析
最坏情况分析
——T(n)=输入规模为n时程序运行的最长时间
平均情况分析
——T(n)=输入规模为n之下所有可能输入的期望时间
最好情况分析(假象)
——当一个非常慢的算法给了一个最好情况的输入时表现得很快,会给人一个假象认为这是一个好算法。
算法的渐进分析(大局观)
在进行分析的时候要忽略掉那些依赖于机器的常量,不是关注实际的运行时间,而是关注运行时间的增长T(n) as n无穷。渐进分析是一种理论分析,是在数