鸡尾酒排序 鸡尾酒排序其实冒泡排序的一种变形,或者说改进。又称为涟漪排序。单从鸡尾酒这个名字看不出来到底是如何实现排序。常见的冒泡排序是始终是按一个方向来进行排序,找到最大或者最小值。而鸡尾酒排序则是按一个方向找到最大(小)值,然后再按另外一个方向找到最小(大)值。然后交替操作,直到排序完成,这有没有一点像在不断地搅动酒杯啊!(因此也被称作来回排序的原因吧)为了直观的展示
猴子排序不知道小伙伴们一看到这个标题时是啥感觉呢,我刚看到时心里一惊,难道是让猴子来进行排序!了解了它的原理后,发现这个名字还是挺贴切的。其实它还有一个更官方的名字——随机排序!随机排序原理,且听我慢慢道来!这种排序被称为最原始和最低效率的排序算法,因为它可能让你永远无法得到结果。因此在实际中不被使用,只供大家娱乐!原理:现有一组未排序数据和相同数量的方格,然后依次随机地取出数据随机地放入方格中,
接下来的博文还会介绍一些好玩的排序算法,比如:桶排序,堆排序,鸡尾酒排序,猴子排序(随机排序),地精排序(据说最简单的排序算法)等等!今天先说计数排序:这是一种时间复杂度为O(n)的排序方法。虽说时间复杂度是最低的排序方法,但是它的缺点也是显而易见的。接着往下看,你就会明白了。原理:给定一定数量的无序的数据,存在数组a中,可以通过遍历一遍数据得到这些数据的范围是(m,n)。新建立一个与原数据个数相
今天想说的是“选择排序方法”先从字面意思解释一下:每次从未排序的数据中选出一个,并按出来的顺序排序得到就是有序的序列了。至于选择的方法无非就是两种:选最大值和选最小值。下面只以选择最大值为例说明。仍然以图来说明算法的流程:图里面给出了两种方法来进行排序,(1)、保留原始内存的方法(排序结果保存在原来的内存)。(2)、重新开辟新内存的方法(排序后原始内存数据保持不变,但是在新内存中保存排序结果)。有
写在前面的话: 最近这段时间看了很多的博文,发现牛人很多很佩服他们那种对算法和理论的游刃有余的掌握和清楚阐释的问题的能力。这两个东西恰恰是自己最缺少的,所以想通过写博客来锻炼一下,同时也是对自己掌握知识的检验,也是个宣泄的途径。 那好,开始第一次博客的经历吧,我不打算写太过高深的东西。一是自己的水平有限(等以后有能力的
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号