算法导论 3.1-6

来源:互联网 发布:控制员工上网软件 编辑:程序博客网 时间:2024/05/11 00:42

问题

证明:一个算法的运行时间是当且仅当其最坏情况运行时间是,且最佳情况运行时间是

分析

证明:
  1. 充分条件:
    算法的运行时间为T(n)
    由题意可知,存在c1,c2,n0,当n>=n0时,0 < c1g(n) <= T(n) <= c2g(n)
    因为最坏运行时间Tmax(n) >= T(n)
    存在c1,n0,当n>=n0时,0 < c1g(n) <= Tmax(n)
    即最坏情况运行时间是
    同理可证最佳情况运行时间是
  2. 必要条件:
    由题意得存在n0,c1使当n >= n0时0 <= c1g(n) <= Tmin(n)且存在n1,c2使当n>=n1时0 <= Tamx(n) <= c2g(n)
    因为Tmin(n) <= T(n) <= Tmax(n)
    所以当n>=max(n0,n1)时,存在c1,c2,使0 <= c1g(n) < T(n) < c2g(n)
    由渐近确界定义,得证
原创粉丝点击