目录 1 问题描述 2 解决方案 2.1比较计数排序 2.2 分布计数排序 1 问题描述 给定一组数据,请使用计数排序,得到这组数据从小到大的排序序列。 2 解决方案 2.1比较计数排序 下面算法的时间复杂度为O(n^2),空间复杂度为O(n)。此方法对于任意一组数据均可排序。 具体代码如下: 运行 ...
分类:
编程语言 时间:
2017-04-14 20:32:32
阅读次数:
222
1、题目 Given an unsorted array, find the maximum difference between the successive elements in its sorted form. Try to solve it in linear time/space. Re ...
分类:
编程语言 时间:
2017-04-12 09:27:28
阅读次数:
245
本文转自:http://blog.csdn.net/SunnyYoona/article/details/24551123 一 引言 计数排序假设n个输入元素中的每一个都是介于0-k的整数,此处k为某个整数。当k等于O(n)时,计数排序的运行时间为Θ(n)。 二 基本思想 计数排序的基本思想就是对每 ...
分类:
编程语言 时间:
2017-04-11 12:00:59
阅读次数:
210
目录 马桶排序(令人作呕的排序) 冒泡排序(面试都要问的算法) 快速排序(见证亚当和夏娃的爱情之旅) 马桶排序(令人作呕的排序) 一、场景:期末考试完了,老师要将同学们的分数从高到低排序。假设班上有 5 名同学,分别考了 5 分、3 分、5 分、2 分和 8 分【满分:10 分】,排序后的结果就是 ...
分类:
编程语言 时间:
2017-04-10 12:57:56
阅读次数:
284
题目:Sort Colors 一个一维数组只有三个元素要把它排序。 思路1:快速排序。 后面专门总结这个排序算法。 思路2:计数排序。 例如:2 5 3 0 2 3 0 3的数组,先申请长度为6的数组,初始值为0. 然后统计其中0-5的每个数字的个数, 在按照大小顺序输出每个数字统计的次数,即排好序 ...
分类:
其他好文 时间:
2017-04-09 17:03:38
阅读次数:
154
使用队列对数组排列,基数排序 /* * 使用队列对数组排列,基数排序 *对于0~99的数字,基数排序将数组集扫描两次。 * 第一次按个位上的数字进行排序, * 第二次按十位上的数字进行排序 * */ function Queue(){ this.dataStore = [];//存放队列的数组,初始... ...
分类:
编程语言 时间:
2017-04-07 13:37:08
阅读次数:
189
一、最快最简单的排序——桶排序 问题:让计算机随机读入5个数然后将这5个数从大到小输出。 分析:这里只需借助一个一维数组就可以解决这个问题 int a[11],i,j,t; for(i=0;i<=10;i++) a[i]=0; //初始化为0 for(i=1;i<=5;i++) //循环读入5个数 ...
分类:
编程语言 时间:
2017-04-03 22:42:37
阅读次数:
265
腊鸡题目,实在卡不过去。 (改了一下午) 就是裸的斯坦纳树的题目,一方面合并子集,另一方面SPFA迭代求解。 优化了许多地方,甚至基数排序都写了。 还是T到死,不打算改了,就这样吧 ...
与前面介绍的7种排序算法不同,基数排序(Radix Sort)是基于多关键字排序的一种排序算法。也就是说,前面介绍的7种排序算法是建立在对单个元素关键字比较的基础之上,而基数排序则是采用"分配"与"收集"的办法,用对多关键字进行排序的思想实现对单个关键字的排序。 基数排序的典型例子当然就是扑克牌排序 ...
分类:
编程语言 时间:
2017-03-31 20:39:06
阅读次数:
285