第一章算法分析基本概念重点.ppt

1.8.2 ?符号 ● INSERTIONSORT执行的比较次数(元运算)次数是(n2-n)/2,是n2阶的,故选择k为某个适当选择的正常数。则其运算次数比较最多是kn2 即:算法的运行时间是?(n2)。 ● 可作如下解释:只要当排序元素的个数等于或超过某个阈值n0时,那么对于某个常量k0,运行时间至多为kn2。 (强调:数据量较大) 注意:数据量很大时,也不能说运行时间总是恰好为kn2。这样, ?符号提供了一个运行时间的上界,它一般不是算法的实际运行时间。 给出?符号的数学定义: 定义1.2 令f(n)和g(n)是自然数集到非负实数集 的两个函数,如果存在一个自然数n0和一个常数 c0,使得?n?n0时f(n)?cg(n),则称f(n)为?(g(n))。 因此,如果limn??f(n)/g(n)存在,那么 limn??f(n)/g(n)?? =》 f(n)=O(g(n))。 ● 定义1.2说明f(n)不比g(n)的某个常数倍增长得更快; ?符号给出了算法运行时间的一个上界。 ● eg.f(n)=5n3+7n2-2n+13,可以写成: f(n)=5n3+?(n2). 这样表示对于低阶项不感兴趣。 1.8.3 ?符号 ● ?(读作“大omega”)符号在运行时间的一个常数因子内提供一个下界。 ●

文档评论(0)

1亿VIP精品文档

相关文档