首页 > 架构设计 > > 数据结构与算法(第一章)
数据结构就是计算机中存储和组织数据的一种特定方式,使得数据处理更加有效。数据结构也分为两种类型:
为了简化求解问题的过程,将数据结构和相关的运算结合起来,就称为ADT。
算法就是用一条接一条的指令来解决给定的问题。

一些常用的增长率

不同增长率之间的关系

最好情况
大O表示法:给出了函数f(n)的严格上限,可以表示为f(n) = O(g(n))。f(n)假设为我们要求解的算法。
大O表示法的定义:
O(g(n))={f(n):存在这样的正常数c和 使得对任意的
,
成立},则g(n)是f(n)的渐进上界。目的就是求出大于或等于f(n)的最小g(n)。
最坏情况
表示法:为给定算法定义了严格的下界。表示为f(n) =
(g(n))。
表示法的定义:
(g(n))={f(n):存在正常数c和
,使得对任意的
,
成立}。g(n)是f(n)的渐进下界。目的就是求出小于或等于增长率f(n)的最大g(n)。
平均情况
表示法:决定了给定算法的时间增长率的上界和下界是否相同。
表示法的定义:
(g(n)) = {f(n):存在正常数
、
和
,使得对任意的
,
成立}。g(n)是f(n)的渐进界。这个情况用得比较少,一般都是用大O表示法求解时间复杂度。



上述的公式,在求解一些问题的时候是非常有帮助的。下面给几个例子:


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31537575/viewspace-3166493/ ,如需转载,请注明出处,否则将追究法律责任。