第二章算法分析.pptVIP

  • 13
  • 0
  • 约7.1千字
  • 约 44页
  • 2017-06-23 发布于四川
  • 举报
第二章 算法分析 本章目标 如何估计一个程序(算法)的运行时间 如何将一个程序的运行时间从天或年降低到秒 本章纲要 1.算法分析基础 2.模型 3.要分析的问题 4.运行时间计算 5.小结 1.算法分析基础 函数增长率:函数增长的速度 4个关于函数增长率的定义: 定义1:如果存在正常数c和n0,使得当N n0时,T(N) cf(N),则记为T(N) =O(f(N)) 定义2:如果存在正常数c和n0,使得当N n0时,T(N) cg(N),则记为T(N) = (g(N)) 定义3:T(N) = (h(N)),当且仅当T(N) =O(h(N))和T(N) = (h(N)) 定义4:如果T(N) =O(p(N))且T(N) (p(N)),则T(N) =o(p(N)) 1.算法分析基础 【例2-1】比较f1(n)=n2,f2(n)=2n+20的增长率关系 解: 当n6时,f1更小; 随后,f1明显胜出。 当n增长时, f1的增 长率大于f2的增长率 令c=1,n0=6,则 f1(n) f2(n),因此 f1(n)= (f2(n)) 或f2(n)=O(f1(n)) 1.算法分析基础 【例2-2】g(N)=2N2,分析g(N)与N4,N3,N2,N的增长率关系。 解: 令c=1,n0=2,g(N)

文档评论(0)

1亿VIP精品文档

相关文档