java希尔排序的实例,希尔排序 Java - 下雨天不打伞才怪的个人空间 - OSCHINA - 中文开源技术交流社区...

/**

* Created by Administrator on 2017/4/8.

*基于插入排序,但是比插入排序简单,比插入排序快

* 希尔排序,从小到大

*/

public class ShellSort {

public void shell(int[] ss){

for(int k=ss.length/2;k>0;k=k/2){

for(int i=k;i

for(int j=k;j

if(ss[j-k]>ss[j]){

int temp=ss[j];

ss[j]=ss[j-k];

ss[j-k]=temp;

}

}

}

}

}

public static void main(String[] args) {

int[] ss={3,5,23,34,98,89,65,90};

ShellSort scort=new ShellSort();

scort.shell(ss);

for(int i=0;i

System.out.print(ss[i]+" ");

}

}

复杂度一般为O(n^1.3),而插入排序为:O(n^2),希尔方法简单,快一些

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值