码迷,mamicode.com
首页 >  
搜索关键字:稳定排序    ( 224个结果
排序算法汇总
总结各种算法之前,现介绍下几个概念:1、稳定度:稳定排序算法会依照相等的关键(换言之就是值)维持纪录的相对次序。也就是一个排序算法是稳定的,就是当有两个有相等关键的纪录R和S,且在原本的串行中R出现在S之前,在排序过的串行中R也将会是在S之前。2、计算的复杂度(最差、平均、和最好表现),依据串行(l...
分类:其他好文   时间:2014-07-29 20:42:02    阅读次数:296
堆排序算法---《程序员必须知道的10大基础实用算法及其讲解》
原帖地址:http://www.oschina.net/question/1397765_159365 快速排序算法的基本特性: 时间复杂度:O(N * logN) 堆排序为不稳定排序,不适合记录较少的排序。 var arr = [], count = 100, i = 0, parentIndex...
分类:其他好文   时间:2014-07-21 10:21:26    阅读次数:207
qosrt函数及sort函数
想起来自己天天排序排序,冒泡啊,二分查找啊,结果在STL中就自带了排序函数sort,qsort,总算把自己解脱了~所以自己总结了一下,首先看sort函数见下表:函数名功能描述sort对给定区间所有元素进行排序stable_sort对给定区间所有元素进行稳定排序partial_sort对给定区间所有元...
分类:其他好文   时间:2014-07-18 10:38:04    阅读次数:342
归并排序(merge-sort)
一,归并排序 归并排序是建立在归并操作上的一种排序算法,它采用了分治法的思想,是一种稳定的排序算法,而且归并排序的速度仅次于快速排序。时间复杂度:O(n*logn),最坏的情况:O(n*logn),空间复杂度:O(n)。从数据就可以看出:归并排序比快速排序快很多,同样为稳定排序。 ...
分类:其他好文   时间:2014-07-05 11:16:20    阅读次数:208
堆排序(heapsort)
堆数据结构是一种数组对象,它可以被视为一棵完全二叉树。时间复杂度为:O(n*logn),空间复杂度:O(1);平均时间复杂度和最坏时间复杂度都为:O(n*logn),但堆排序是不稳定排序。堆排序思路: 1.建立小堆:把堆看成一个完全二叉树,然后从这棵树的最大非叶子节点开始,比较...
分类:其他好文   时间:2014-07-05 11:12:28    阅读次数:249
插入排序(insertion-sort)
作为排序算法的一种,插入排序是稳定排序。它的时间复杂度:O(n*n),空间复杂度为:O(1)。最好的时间复杂度为:O(n),最坏和平均则为:O(n*n)。 算法的思想:给定一组无序的数组,我们从它的第二个数开始,并将它赋值给mark变量,让mark和它前面的一个数作大小比较,若小于前面的那个...
分类:其他好文   时间:2014-07-04 00:15:22    阅读次数:296
快速排序(quicksort)
快速排序是对冒泡排序算法的一种改进型算法,而且快速排序也采用了分治法的思想。快速排序是不稳定排序,平均时间复杂度为:O(n*logn),最坏时间复杂度为:O(n*n),空间时间复杂度:O(logn),但快速排序通常是用于排序的最佳实用的选择。快速排序的思想:从数组选取一个数(通常是第一个数)...
分类:其他好文   时间:2014-07-03 23:36:18    阅读次数:296
排序大总结
5.排序操作5.1基础知识对于排序操作,介绍过很多的算法,在笔记中有关于排序算法的简单总结,但是对于每一个配需算法没有详细的深入,知识对于排序的稳定性做了一下了解。下面深入的分析一下排序算法,并且使用C++语言实现。首先介绍上一次在笔记中整理稳定排序和不稳定排序的知识:选择排序、快速排序、希尔排序、...
分类:其他好文   时间:2014-06-28 17:25:00    阅读次数:274
八大排序算法学习笔记:插入排序(一)
插入排序       包括:直接插入排序,二分插入排序(又称折半插入排序),链表插入排序,希尔排序(又称缩小增量排序)。属于稳定排序的一种(通俗地讲,就是两个相等的数不会交换位置) 。    直接插入排序:  1、算法的伪代码(这样便于理解):          INSERTION-SORT (A, n)             A[1 . . n]       for...
分类:其他好文   时间:2014-06-22 22:23:22    阅读次数:218
选择排序
1 算法原理依次确认第一个位置0~倒数第二个位置size-2的值。在确认位置i时,其前面的位置都已经确认,所以位置i处应该放置剩余的元素中的最小值。选择排序时间复杂度为O(n^2),速度比较慢。当数组长度为10万时,就耗时20s了。选择排序是不稳定排序,相等的元素,排序之后,相对位置可能发生变化。2...
分类:其他好文   时间:2014-06-20 23:49:41    阅读次数:318
224条   上一页 1 ... 20 21 22 23 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!