• 5个数通过7次比较排序的方法


    5个数之间的大小关系构成的一个树形图T。T中的一个结点代表一个数,而一条边代表它所

    关联的两个数的大小关系,T的根就是中位数。显然T中的一条边要由一次比赛来确定。在

    面的图中,如果x大于y,则节点x在节点y的上方且x和y有一条边相连。另外,*表示一般的

    数,o表示下一次即将进行比较的两个数。

    第1步,先任取两个数比较,结果为:

    *
    |
    * o o *

    第2步,再取另外两个数比较,结果为:

    o o
    | |
    * * *

    第3步,按照上图比较其中两个标记为o的数,比较结果只有一种情况:

    *
    / \
    o *
    |
    * o

    第4步,按照上图比较其中两个标记为o的数,比较结果有两种情况:

    o o *
    \ / \ / \
    * * * *
    | / \
    * o o

    第5步,按照上图比较其中两个标记为o的数,比较结果有两种情况:


    * *
    | / \
    * * o
    / \ |
    o o o
    | |
    * *

    第6步,按照上图比较其中两个标记为o的数,比较结果有三种情况:

    * * *
    | | / \
    * * o o
    | | \ /
    * * *
    | / \ |
    * o o *
    |
    *
    其中第一种情况已经排好序了
    第7步,按照上图比较其中两个标记为o的数,比较结果只有一种情况:

    *
    |
    *
    |
    *
    |
    *
    |
    *

    所以只需要7步比较就可以把5个数排好序

  • 相关阅读:
    Fraction to Recurring Decimal
    Compare Version Numbers
    回溯法 -数据结构与算法
    Maximum Gap
    STL——迭代器的概念
    STL——内存基本处理工具
    STL——空间的配置和释放std::alloc(第一级配置器和第二级配置器)
    careercup-中等难度 17.12
    careercup-中等难度 17.11
    careercup-中等难度 17.9
  • 原文地址:https://www.cnblogs.com/lzhitian/p/2381204.html
Copyright © 2020-2023  润新知