zoukankan      html  css  js  c++  java
  • 《算法导论》笔记 第8章 8.1排序算法时间的下界

    【笔记】


    任意一个比较排序算法在最坏情况下,都需要做Ω(nlogn)次的比较。

    堆排序和合并排序都是渐进最优的比较排序算法,运行上界O(nlogn)与最坏情况下界Ω(nlogn)是一致的。


    【练习】


    8.1-1 在于某种比较排序算法对应的决策树中,一个叶结点最小可能的深度是多少?



    8.1-2 不用斯特林近似公式,给出log(n!)渐进紧缺界。



    8.1-3 证明:对于长度为n的n!种输入中的至少一半而言,不存在具有线性运行时间的比较排序算法。对n!中的1/n部分而言又怎样呢?1/2^n部分呢?

    假设有m个结点存在线性运行时间的比较排序算法,由高度为h的二叉树至多有2^h个子结点,则2^h>=m。

    两边取对数则,h>=log(m),即树的高度至少大于等于log(m)。

    由任何一个比较排序算法在最坏情况下,都需要做Ω(nlogn)次比较,则h>=O(nlogn)。

    若logm<=O(nlogn) 则,存在一种使m种输入的线性时间运行的比较排序算法。

    令m= n!/2,log(n!/2)=logn!-1>=nlogn-nloge-1


    8.1-4 现有n个元素要排序。该输入序列包含n/k个子序列,每一个包含k个元素。每个子序列中的元素都小于后继子序列中的元素,大于前驱子序列中的元素。这样,只要对各n/k子序列中的k元素排序,就可以得到对整个输入序列长度为n的排序结果。证明:这个排序问题中所需的比较次数有一个下界Ω(nlogk)。




  • 相关阅读:
    Oracle载体服务器迁移后,数据一致性校验脚本
    六、HDFS
    五、集群配置
    2、【Hadoop HDFS】Does not contain a valid host:port authority: pc_node01:8082
    1、【Hadoop Yarn】 ./sbin/start-yarn.sh时,报错there is no YARN_RESOURCEMANAGER_USER defined
    一、Thread
    Centos安装KDE
    四、ssh免密登录
    cell_滑动
    aircrack-ng破解WiFi密码
  • 原文地址:https://www.cnblogs.com/cyendra/p/3681622.html
Copyright © 2011-2022 走看看