博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
希尔排序
阅读量:5152 次
发布时间:2019-06-13

本文共 848 字,大约阅读时间需要 2 分钟。

希尔排序是插入排序的一种,也叫做缩减增量排序,是对插入排序的一种优化,但是不稳定。

public class ShellSort {
/** *希尔排序,也可以叫做缩减增量排序,不稳定,为了减少比较次数,如插入排序 需要n X n * 原理:通过比较相距一定间隔的元素来工作; * 各躺所用的距离随着算法的进行而减少,知道只比较相邻元素的最后一个排序位置 * * 所间隔的k元素都被排序,相比于插入排序,时间会减少 */ public static void main(String[] args) {
int[] a = {77, 12, 88, 42, 7, 22, 78}; sort(a); System.out.println(Arrays.toString(a)); } public static void sort(int[] a) {
int j; for(int gap = a.length/2; gap > 0; gap /= 2) {
for(int i = gap; i < a.length; i++) {
int tmp = a[i]; for(j = i; j >= gap && tmp < a[j-gap]; j -= gap) {
a[j] = a[j-gap]; } a[j] = tmp; } } } }

转载于:https://www.cnblogs.com/l-x-x-y-d-j/p/11332130.html

你可能感兴趣的文章
LintCode-Backpack
查看>>
查询数据库锁
查看>>
我对于脚本程序的理解——百度轻应用有感
查看>>
面试时被问到的问题
查看>>
注解小结
查看>>
list control控件的一些操作
查看>>
判断字符串在字符串中
查看>>
oracle 创建暂时表
查看>>
201421410014蒋佳奇
查看>>
Xcode5和ObjC新特性
查看>>
Centos 7.0 安装Mono 3.4 和 Jexus 5.6
查看>>
CSS属性值currentColor
查看>>
Real-Time Rendering 笔记
查看>>
Activity之间的跳转:
查看>>
实验四2
查看>>
多路复用
查看>>
Python数据可视化之Pygal(雷达图)
查看>>
Java学习笔记--字符串和文件IO
查看>>
转 Silverlight开发历程—(画刷与着色之线性渐变画刷)
查看>>
在js在添版本号
查看>>