赞
踩
比较类排序:插入排序,选择排序,希尔排序,冒泡排序,快速排序,堆排序,归并排序。
算法的思想:
冒泡排序顾名思义,实际上每一趟之后都会使得当前最大的元素到最后面,也就是最大的次大的等等依次“浮出水面”。
算法的描述:
动画演示
算法思想:
同样的顾明思义,我们总是选择当前所有元素当中最小的元素放到最前面,这就是选择排序的核心思想。
算法描述:
动画演示:
算法思想:
将数据分为两个区域,有序区域和无序区域,我们每一次从无序区域选择元素插入到有序区域当中,好比我们拿到扑克之后的洗牌操作。
算法描述:
动画演示:
算法思想:
他是建立在插入排序的基础上的,但是他是优先比较间隔较远的元素,因此又叫做缩小增量排序。其核心就是保证部分序列有序,这样就能减少移动的次数。
算法描述:
动画演示:
算法思想:
归并排序,实际上是采用分治算法,分而治之的思想,我使得它的最小部分有序,然后在最小部分有序的基础上,使得次小部分有序,这样最后我们就能使得最大的部分有序。
算法描述:
动画演示:
算法思想:
它整体的思想就是每一趟都会选取基准点,将要排序的数据分成两部分,其中一部分比基准点小,另外一部分比基准点要大,然后按照分而治之的思想对这两部分进行同样的操作。
算法描述:
动画演示:
算法思想:
堆排序是建立堆得基础上的,我们根据需要构建最大堆或者是最小堆,那么堆的顶部的元素对应的就是最大或者是最小值。
算法描述:
动画演示:
算法思想:
顾名思义算法的思想很简单,我们需要记录输入数据的最大值与最小值,我们需要统计最大值与最小值之间的所有元素的出现次数,最后我们遍历一次记录数组就可以得到最后的顺序。
算法描述:
动画演示:
算法思想:
将给出的数据分为多个部分,然后对于每个部分内部进行排序,使其部分内部有序,然后我们需要对所有的部分从小到大依次获取其中的有序元素即可,当所分出的部分的数目等于不同数据的个数的时候实际上类似与计数排序。
算法描述:
动画演示:
算法思想:
基数排序是按照低位先排序,然后收集;再按照高位排序,然后再收集;依次类推,直到最高位。
算法描述:
动画演示:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。