码迷,mamicode.com
首页 >  
搜索关键字:线性时间排序 计数排序 基数排序 桶排序    ( 1173个结果
六种排序算法C语言版(上)
排序即将一个无序的数组(序列)按照一定的规则排列,常见的规则便是按照从大到小或者从小到大的顺序。本文讨论的排序一律指按照从小到大的顺序进行排列的这种情况。 本文将分为上下两章介绍以下六种排序算法: (1)直接选择排序 (2)冒泡排序 (3)快速排序 (4)二分排序 (5)堆排序 (6)线性时间排序。 ...
分类:编程语言   时间:2016-03-31 23:25:04    阅读次数:154
桶排序
桶排序思想:假如数组bucketArr[9]={0};初始化为0;如下:0000000000下标:0123456789假如要排序的数为:322899,最大的数不能超过定义桶数组的最大下标。则将出现的数放到桶中,相应下标的桶加1。则结果为:0021000012现在只要输出:下标为2则输出两个2,下标为3这输出1个三,..
分类:编程语言   时间:2016-03-29 22:29:59    阅读次数:262
计数排序-countingSort
应用场景: 数据重复出现次数大 数据紧凑。 主导思想: 用原数组的最大值为长度申请一个数组初始化为零,遍历原数组,将原数组的每个值当做新数组的下标 里面值++ ;arrNew[arr[i]]++ 。 最后遍历新数组 将新数组的每个非零值 循环变成0,即将 有序的数 导回原数组 代码: 后记: 计数排 ...
分类:编程语言   时间:2016-03-28 21:25:50    阅读次数:179
排序算法总结
趁着有时间把学习过的排序算法又实现了一遍复习一下,实现的排序算法主要有以下几种:冒泡排序、快速排序,选择排序,堆排序,插入排序,合并排序,希尔排序,桶排序等。 下面是网上找的一张图片,总结了常见排序算法的时间复杂度、空间复杂度以及稳定性,可以参考一下。 下面排序的都是vector<int>,懒得写模
分类:编程语言   时间:2016-03-21 01:40:06    阅读次数:336
桶排序/基数排序(Radix Sort)
说基数排序之前,我们先说桶排序: 基本思想:是将阵列分到有限数量的桶子里。每个桶子再个别排序(有可能再使用别的排序算法或是以递回方式继续使用桶排序进行排序)。桶排序是鸽巢排序的一种归纳结果。当要被排序的阵列内的数值是均匀分配的时候,桶排序使用线性时间(Θ(n))。但桶排序并不是 比较排序,他不受到
分类:编程语言   时间:2016-03-18 21:33:21    阅读次数:168
排序算法之JAVA基数排序算法
package net.qh.test.sort; import java.util.ArrayList; import java.util.List; /** * Created by Administrator on 2016/03/07. */ public class Radix { pub
分类:编程语言   时间:2016-03-07 16:43:53    阅读次数:195
简单的三种排序
桶排序:思路是,申请足够数量的空间去存放可能出现的值,循环所有的值,把对应值得地方进行标记,然后依据值得大小输出排序的顺序。 例子:2 5 8 6 1 4 申请数组a[8] 出现一个数,a[那个数] = 1; 最后循环数组,值为1的输出即可。 冒泡排序:思路是,不停的比较前后两个数,如果顺序不对就交
分类:编程语言   时间:2016-03-01 23:57:49    阅读次数:329
常用排序讲解
分类: 1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序)4)归并排序5)分配排序(基数排序)所需辅助空间最多:归并排序所需辅助空间最少:堆排序平均速度最快:快速排序 不稳定:快速排序,希尔排序,堆排序。 先来看看8种排序之间的关系: 1.直
分类:编程语言   时间:2016-02-26 16:44:34    阅读次数:309
排序算法
算法 最坏情况 平均情况/期望运行时间 插入排序 Θ(n^2) Θ(n^2) 归并排序 Θ(nlg(n)) Θ(nlg(n)) 堆排序 O(nlg(n)) 快速排序 Θ(n^2) Θ(n^2)(期望) 计数排序 Θ(k+n) Θ(k+n) 基数排序 Θ(d(k+n)) Θ(d(k+n)) 桶排序 Θ
分类:编程语言   时间:2016-02-23 20:40:34    阅读次数:182
【每日算法】计数&基数&桶&位图排序-简介
在前面的文章中,我们介绍的都是基于比较的排序。对于比较排序,对含n个元素的序列进行排序,在最坏情况下都要用O(n logn)次比较(归并排序和堆排序是渐近最优的)。本文将继续介绍以线性时间运行的排序算法,他们使用的是非比较排序,因此下界O(n logn)对它们不适用。计数排序想象下面这种情况:一个班有k个人,需要排成一条纵队,地面上已经用粉笔按从小到大的顺序标明了1到k个号码,要求按身高从低到高排列...
分类:编程语言   时间:2016-02-20 13:24:39    阅读次数:193
1173条   上一页 1 ... 74 75 76 77 78 ... 118 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!