设计算法五步骤,
1,问题的理解:清楚问题的输入、要求和输出;
2,数据结构的设计:一方面要选择能有效表示和存储应用问题中所涉及的数据对象的数据结构,同时还要选择或设计能支持算法策略实现的数据结构;
3,算法设计:包括选择算法策略、用适当的方式描述和逐步细化算法步骤。
4,算法分析:发现有改进完善之处,返回第二部,重新选择或设计数据结构、重新设计算法。(找寻过程中能够解构,将其中高频出现的步骤设计成函数,防止高耦合)
5,程序实现:用某种计算机程序设计语言,定义数据结构、编写实现算法的代码,在计算机上调试和运行程序。
算法复杂度分析
算法复杂性是算法运行所需要的计算机资源的量,需要时间资源的量称为时间复杂性,需要的空间资源的量称为空间复杂度。
这个量应该只依赖于算法要解的问题的规模、算法的输入和算法本身的函数。如果分别用N、I和A表示算法要解问题的规模、算法的输入和算法本身的函数,而且用C表示复杂性,那么,应该有C=F(N,I,A)。一般把时间复杂性和空间复杂性分开,并分别用T和S来表示,则有: T=T(N,I)和S=S(N,I) 。
(通常,让A隐含在复杂性函数名当中)
算法复杂性分析
主要分体