常见的几种排序算法二-希尔排序
2016-01-07 21:41
225 查看
希尔排序,是一个被专家称之为在任何排序地点都适用的排序。
“如果你不知道这个地方用什么排序好,那么选择希尔排序吧,如果现实证明他不够的优秀,在换其他的也不迟。”
是的他相对来说简单,容易实现。性能也足以应付很多场景,今天正式的认识一下希尔排序。
代码中有两个函数请参考常见几种排序算法一
“如果你不知道这个地方用什么排序好,那么选择希尔排序吧,如果现实证明他不够的优秀,在换其他的也不迟。”
是的他相对来说简单,容易实现。性能也足以应付很多场景,今天正式的认识一下希尔排序。
代码中有两个函数请参考常见几种排序算法一
public class Shell { public static void sort(Comparable[] a) { int N=a.length; int h=1; whlie(h<N/3) { h=3*h+1;//1,4,13,40,121,364…… } while(h>=1) {//将数组变为h有序 for(int i=h;i<N;i++) {//将a[i]插入到a[i-h],a[i-2*h],a[i-3*h]...之中 for(int j=i;j>=h&& less(a[j],a[j-h]);j-=h) { exch(a,j,j-h); } } h=h/3; } } }
相关文章推荐
- android如何监听发送短信?
- 找不到mysql.sock问题
- 确立核心模型
- tcp粘包分析
- mysql常用操作
- Linux系统基本的内存管理知识讲解
- Gentoo系统安装步骤详解
- 网页布局相关知识点整理
- RESideMeue使用观后感
- js--动画
- 关于float和double类型数据的输入输出
- MyBatis_SqlMapConfig.xml初始
- The entitlements specified in your application’s Code Signing Entitlements file do not match those s
- 谈谈SDN保障下的双十一
- linux--环境变量
- js--动画
- Linux系统下chkconfig命令使用详解
- 举例讲解Linux中tcpdump工具的应用
- elecworks无法连接至协同服务器
- jQuery-Mobile学习(页面)