白银上分黄金失败=。= 在之前有很认真的写了一波排序,所以排序并不是很怂,还是那个理,现阶段学习的都是比较简单的排序,都是所谓的冒泡排序啊,桶排序这类,至于插排和选择排序,再往后又是什么快拍就很尬了。 说一下今天A的题 1075 明明的随机数 1076 排序 1212 最大公约数 1430 素数判定 ...
分类:
其他好文 时间:
2017-03-19 10:58:11
阅读次数:
183
常用的排序方法有:冒泡排序、快速排序、选择排序、插入排序、归并排序,除此之外,还有基数排序、鸡尾酒排序、桶排序、鸽巢排序、希尔排序等,这里着重介绍下前半段列举的几种常见方法的实现。 1. 冒泡排序法: 2. 快速排序法: 3. 选择排序法:每次寻找序列中的最小值,然后放在最末尾的位置。 4. 插入排 ...
分类:
编程语言 时间:
2017-03-18 15:33:49
阅读次数:
250
这个排序是桶排序和基数排序的改进,理解了前两者,这个排序很容易理解 先回忆下桶排序是怎么回事,它与桶的区别在于入桶规则,桶排序里是1入1号桶,2入2号桶 这个排序把数字分区了,然后给出一个所谓的键,例如它规定0-9都入0号桶 10-19都入1号桶,这样桶覆盖的范围将增大10倍,这在某种情况下是很有用 ...
分类:
其他好文 时间:
2017-03-09 22:37:42
阅读次数:
167
理解了基数排序,也就理解了桶排序。 桶排序就是基数排序的一种优化,从MSD开始,即取最高位来排一次序,如果最高位没有重复(意味着没有冲突需要处理),是算法的最佳状态,O(n)。 如果有冲突,就将冲突的元素存放到对应的桶里(代码就是一个链表或者数组或者stl容器),然后对每个桶进行一次插入排序,平均情 ...
分类:
编程语言 时间:
2017-03-01 23:15:09
阅读次数:
323
地址 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 堆排序 计数排序 桶排序 基数排序 ...
分类:
编程语言 时间:
2017-02-11 11:13:54
阅读次数:
170
算法,是永恒的技能,今天继续算法篇,将研究桶排序。 算法思想: 桶排序,其思想非常简单易懂,就是是将一个数据表分割成许多小数据集,每个数据集对应于一个新的集合(也就是所谓的桶bucket),然后每个bucket各自排序,或用不同的排序算法,或者递归的使用bucket sort算法,往往采用快速排序。 ...
分类:
编程语言 时间:
2017-01-23 17:09:29
阅读次数:
284
#include<stdio.h>int main(){ int i,j,n,t; int tong[11]; printf(" 请输入数字个数 :"); scanf("%d",&n); for(i=1;i<=n;i++) { tong[i]=0; } for(i=1;i<=n;i++) { sca ...
分类:
编程语言 时间:
2017-01-10 11:49:22
阅读次数:
145
1 //不能用桶排序,因为不用排序!!!! 2 #include 3 int c[101],g[101]; 4 int main() 5 { 6 int a,b,cus=0,i; 7 while(~scanf("%d%d",&a,&b) && a+b) 8 { 9 if(!g[a]) 10 c[cu... ...
分类:
其他好文 时间:
2017-01-08 14:05:54
阅读次数:
146
桶排序是一种效率很高的排序算法,它的时间复杂度为O(N+M),(N个元素,范围为0--M),但桶排序有一定的限制,必须为非负整数,而且元素不宜过大。 算法思想: 设待排序序列的元素取值范围为0到m,则我们新建一个大小为m+1的临时数组并把初始值都设为0,遍历待排序序列,把待排序序列中元素的值作为临时 ...
分类:
编程语言 时间:
2016-12-25 13:54:44
阅读次数:
204
此题为洛谷普及试炼场的一道水题。。。。 题目链接:https://www.luogu.org/problem/show?pid=1223 题目描述 有n个人在一个水龙头前排队接水,假如每个人接水的时间为Ti,请编程找出这n个人排队的一种顺序,使得n个人的平均等待时间最小。 输入输出格式 输入格式: ...
分类:
编程语言 时间:
2016-12-23 14:20:30
阅读次数:
3920