快速排名新算法怎么用?(教你快速排名新算法的9个步骤)

访客4年前关于黑客接单585

快速排序,正如它的名字所体现,是在实践中已知的最快的排序算法,平均运行时间为O(NlogN),最坏的运行时间为O(N^2)。算法的基本思想很简单,然而想要写出一个高效的快速排序算法并不是那么简单。基准的选择,米素的分割等都至关重要,如果你不清楚如何优化快速排序算法,本文你不该错过。

算法思想

快速排序利用了分治的策略。而分治的基本基本思想是:将原问题划分为若干与原问题类似子问题,解决这些子问题,将子问题的解组成原问题的解。

那么如何利用分治的思想对数据进行排序呢?假如有一个米素 *** A:

  • 选择A中的任意一个米素pivot,该米素作为基准

  • 将小于基准的米素移到左边,大于基准的米素移到右边(分区操作)

  • A被pivot分为两部分,继续对剩下的两部分做同样的处理

  • 直到所有子集米素不再需要进行上述步骤

可以看到算法思想比较简单,然而上述步骤实际又该如何处理呢?

如何选择基准

实际上无论怎么选择基准,都不会影响排序结果,但是不同的选择却可能影响整体排序时间,因为基准选择不同,会导致分割的两个 *** 大小不同,如果分割之后,两个 *** 大小是几乎相等的,那么我们整体分割的次数显然也会减少,这样整体耗费的时间也相应降低。我们来看一下有哪些可选择策略。

选择之一个或者最后一个

如果待排序数是随机的,那么选择之一个或者最后一个作基准是没有什么问题的,这也是我们最常见到的选择方案。但如果待排序数据已经排好序的,就会产生一个很糟糕的分割。几乎所有的数据都被分割到一个 *** 中,而另一个 *** 没有数据。这样的情况下,时间花费了,却没有做太多实事。而它的时间复杂度就是最差的情况O(N^2)。因此这种策略是绝对不推荐的


相关文章

hpv是怎么感染上的(究竟是怎么感染HPV的)

hpv是怎么感染上的(究竟是怎么感染HPV的)一项基于美国人群的研究显示,有性行为的男性和女性,一生中感染HPV的几率高达85%-90%。2018年起,国际乳头瘤病毒学会将每年的3月4日定为“国际HP...

四川法定婚假放多少天 2019年新规定调整了解一下

四川法定婚假放多少天 2019年新规定调整了解一下 尽管说我国是要求了法律规定的法定婚假日数的,可是每一个省份的实际要求实际上是一些些许的区别的。在不一样的地区,我们要掌握不一样的放假了要求,才可以...

360随身wifi怎么用?真实操作体验

360随身wifi怎么用?真实操作体验

还记得当时风靡办公室的360随身WiFi么?不少办公室的白领和学生朋友们,使用这个小小的设备,解决了自己的手机、平板电脑等无法通过WiFi上网的难题。现在,360随身WiFi推出了第三代的产品,硬件性...

创业如何少走弯路?给90后创业者的4条建议

如今的社会,伴随着愈来愈多的人添加自主创业的浪潮中,自主创业这条道路对创业人的专业能力规定也愈来愈高,并不是像以往一样,有一些资产和人脉关系就可以踏入自主创业的路面。我作为一名创业人,给将要要踏入这条...

什么是现代简约风格(现代简约风格装修图)

什么是现代简约风格(现代简约风格装修图)

现代简约风格是目前比较流行的风格之一,它虽然没有其他风格那么华丽,但是不等于简单装修,运用简单的装饰手法,一样可以呈现出意想不到的效果。那么什么是现代简约风格?现代简约风格特点有哪些呢?接下来就和统帅...

什么样的文章符合seo

做seo就必须和文章内容打交道,什么样的文章才符合seo是seo工作者不断探求的问题,从更细化的角度来看没有一五一十的标准,从大多数的经验来看,遵循部分文章写作规范是符合seo的,对搜索引擎也是更为有...