zoukankan      html  css  js  c++  java
  • 随机算法之舍伍德算法

    不管那么多,先做下笔记,保留一些战果吧!

    首先是舍伍德算法

    这个算法的核心就是去除因为实例造成计算时间过长的情况。

    最简单的例子,就是在排序的时候,我们知道如果排的序列是这个:

    5,4,3,2,1

    而你需要正序排列,每次选取第一个数作为基数,那么就会发现其时间复杂度居然是n^2

    所以我们在通常不知道输入样例的情况下,希望尽可能的避免出现这种状况

    这就涉及舍伍德随机算法了,其实就是把一些东西随机化

    例如在对输入的数组进行随机,因为最后的排序结果依旧是相同的,所以是可行的

    这样做的好处就是,不管你输入的是什么,反正我都随机了,至于随机的结果好与坏那是另外一个问题,服从均匀分布

    好的时候可能是:1,2,3,4,5,

    坏的时候可能是:5,4,3,2,1

    但是此时已经与你输入的是什么无关了,只与概率相关,这样的话就会尽可能的避免因为用户的输入造成一些不好的结果。

  • 相关阅读:
    fpga不错的源代码下载地址
    iverilog命令选项解释
    altera官方视频教程下载地址
    niosII EDS和QuartusII安装心得体会
    FPGA的JTAG口很脆弱?
    poj2379
    poj2472
    poj2935
    poj3366
    poj1493
  • 原文地址:https://www.cnblogs.com/gambler/p/9237292.html
Copyright © 2011-2022 走看看