排序算法
文章平均质量分 57
ypy_sdnu
既然努不努力都是一辈子,为什么不豁出去拼一拼,让自己活在高处。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
直接插入排序
直接插入排序思路:(1)设置监视哨k[0],将需要插入的值赋值给k[0];(2)设置开始查找的位置j;(3)在数组中进行查找,搜索中将第j个记录后移,直至k[0]>=k[j] 为止。(4)将r[0]插入到r[j+1]的位置平均时间复杂度:O(n2) 最好时间复杂度:O(n) 最坏:O(n2) 空间复杂度:O(1)代码实现:public class DirectInsertSort {原创 2018-01-18 20:06:08 · 209 阅读 · 0 评论 -
希尔排序
希尔排序(java实现) 一:简介希尔排序是插入排序的一种又称“缩小增量排序”(Diminshing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因D.L.Shell于1959年提出而得名。希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰原创 2018-01-18 19:51:23 · 194 阅读 · 0 评论 -
折半插入排序(java版本)
折半查找思路:折半查找其实就是在查找插入位置的时候采用二分查找算法,可以说折半插入算法是(直接插入排序+二分查找)注意:时间复杂度O(n2) 空间复杂度:O(1)实现代码:public class BinaryInsertSOrt { public static void binaryInsertSort(int[] a) { int n=a.length;原创 2018-01-18 20:10:52 · 315 阅读 · 0 评论 -
基数排序
基数排序(radix sort)属于分配式排序(distribution sort),又称为桶排序(bucket sort)或者bin sort。它是透过键值的部分资讯,将要排序的元素分配到某些桶中,达到排序的目的。隶属于稳定性排序,时间复杂度为O(n*m)n代表最大数的维度,m为记录数。实现代码如下:public class RadixSort { public static void原创 2018-01-18 20:17:44 · 162 阅读 · 0 评论
分享