算法设计与分析:基于C++编程语言的描述
上QQ阅读APP看书,第一时间看更新

1.3.1 算法分析的概念

算法的复杂性指的是算法在运行过程中所需要的计算机资源的量,算法分析就是对该量的多少进行分析。所需资源的量越多,表明该算法的复杂性越高,反之,算法的复杂性越低。计算机的资源最重要的是运行算法时所需的时间、存储程序和数据所需的空间。因而,算法分析是对时间复杂性和空间复杂性进行分析。

算法分析对算法的设计、选用和改进有着重要的指导意义和实用价值:①对于任意给定的问题,设计出复杂性尽可能低的算法是在设计时考虑的一个重要目标;②当给定的问题已有多种算法时,选择复杂性最低者是在选用算法时应遵循的一个重要原则;③算法分析有助于对算法进行改进。

在算法的学习过程中,必须学会对算法进行分析,以确定或判断算法的优劣。本书主要关注算法的时间复杂性分析。