1 #include <cstdio> 2 #include <iostream> 3 #include <cstring> 4 using namespace std; 5 void num_Count(int a[],int n,int max) 6 { 7 int i,j; 8 int buc ...
分类:
编程语言 时间:
2020-01-05 20:27:08
阅读次数:
86
基数排序属于稳定排序,时间复杂度为O(logRB),桶排序为基数排序的扩展 思路:将整位数切割成不同的数字,然后按每个位数分别比较 过程:设置10个桶子分别从0到9,将每个元素的个位数取出,与桶的数字相对于就放入,然后按照桶顺序依次取出数据,放入原来的数组,接着按照这个步骤取十位数,没有的补0,后面 ...
分类:
编程语言 时间:
2019-12-29 13:16:46
阅读次数:
72
希尔排序 希尔排序是一个叫希尔的数学家提出的一种优化版本的插入排序。 首先取一个整数d1=n//2,将元素分为d1个组,每组相邻元素之间的距离为d1,在各组内进行直接插入排序。 取第二个整数d2=d1//2,重复上述分组排序过程,直到di=1,即所有元素在同一组内进行直接插入排序。 希尔排序是使整体 ...
分类:
编程语言 时间:
2019-12-25 15:53:09
阅读次数:
72
基数排序 "原理" 基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度 ...
分类:
编程语言 时间:
2019-12-19 22:56:52
阅读次数:
114
文章目录查找搜索引擎线性查找(顺序查找)二分查找排序桶排序(计数排序)选择排序(交换排序上改进)冒泡排序快速排序(Quick Sort)插入一个数据到有序数列中 查找 搜索引擎 matching & ranking 索引技术 AltaVista:foward index 文档到关键词 / inver ...
分类:
编程语言 时间:
2019-12-17 20:29:26
阅读次数:
136
1. 基数排序 算法核心思想 基数排序(radix sort)是一种只适用于数字或字母类型的排序方法,它检查数字或字母的每一位,将之分类,按照位数的特定顺序,来将元素排列。以数字为例,将所有元素按照个位数字分类,分类好后,将个位数字大小排列组合起来,再按照十位数字分类,再按照数字大小排列组合起来,一 ...
分类:
编程语言 时间:
2019-12-09 21:32:36
阅读次数:
116
原文:https://www.cnblogs.com/xiaohuiduan/p/11188304.html 十大排序算法 基本排序算法: 选择排序 插入排序 冒泡排序 高效排序算法: 梳排序 希尔排序 快速排序 堆排序 牺牲空间节约时间的高效排序: 归并排序 基数排序 基数排序 下面我将以我自己的 ...
分类:
编程语言 时间:
2019-12-03 23:49:03
阅读次数:
141
桶排序是计数排序的升级版。它利用了函数的映射关系,高效与否的关键就在于这个映射函数的确定。为了使桶排序更加高效,我们需要做到这两点: 在额外空间充足的情况下,尽量增大桶的数量 使用的映射函数能够将输入的 N 个数据均匀的分配到 K 个桶中 同时,对于桶中元素的排序,选择何种比较排序算法对于性能的影响... ...
分类:
编程语言 时间:
2019-12-02 23:47:02
阅读次数:
118
计数排序 计数排序的核心在于将输入的数据值转化为键存储在额外开辟的数组空间中。作为一种线性时间复杂度的排序,计数排序要求输入的数据必须是有确定范围的整数。 1. 计数排序的特征 当输入的元素是 n 个 0 到 k 之间的整数时,它的运行时间是 Θ(n + k)。计数排序不是比较排序,排序的速度快于任... ...
分类:
编程语言 时间:
2019-12-02 23:20:34
阅读次数:
155
基数排序 基数排序是一种非比较型整数排序算法,其原理是将整数按位数切割成不同的数字,然后按每个位数分别比较。由于整数也可以表达字符串(比如名字或日期)和特定格式的浮点数,所以基数排序也不是只能使用于整数。 1. 基数排序 vs 计数排序 vs 桶排序 基数排序有两种方法: 这三种排序算法都利用了桶的... ...
分类:
编程语言 时间:
2019-12-02 23:13:05
阅读次数:
77