数据结构整理篇。
概念:
算法:是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。
算法的特性:
五个基本特性:输入、输出、有穷性、确定性和可行性。
算法设计的要求:正确性、可读性、健壮性、时间效率高和存储量低。
算法效率的度量方法:
事后统计方法:
事前分析估算方法:在计算机程序编制前,依据统计方法对算法进行估算。
函数的渐近增长:给定两个函数f(n) 和g(n),如果存在一个整数N,使得对于所有的n>N,f(n) 总是比g(n)大,那么我们说f(n)的增长渐近快于g(n)
算法时间复杂度:
(在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。这是一个关于代表算法输入值的字符串的长度的函数。时间复杂度常用大O符号表述,不包括这个函数的低阶项和首项系数。)
常数阶
线性阶
对数阶
算法时间复杂度比较:Ο(1)<Ο(log2n)<Ο(n)<Ο(nlog2n)<Ο(n2)<Ο(n3)<…<Ο(2n)<Ο(n!)<O(nn)
算法的空间复杂度:
类似于时间复杂度的讨论,一个算法的空间复杂度(Space Complexity)S(n)定义为该算法所耗费的存储空间,它也是问题规模n的函数。渐近空间复杂度也常常简称为空间复杂度。
------相关资料推荐
大话数据结构