java 希尔排序
来源:互联网 发布:淘宝卖家回复买家评价 编辑:程序博客网 时间:2024/06/05 03:43
1、基本思想:
先将整个待排序的记录序列分割成为若干子序列分别进行直接插入排序,待整个序列中的记录“基本有序”时,再对全体记录进行依次直接插入排序。
2、操作方法:
- 选择一个增量序列t1,t2,…,tk,其中ti>tj,tk=1;
- 按增量序列个数k,对序列进行k 趟排序;
- 每趟排序,根据对应的增量ti,将待排序列分割成若干长度为m 的子序列,分别对各子表进行直接插入排序。仅增量因子为1 时,整个序列作为一个表来处理,表长度即为整个序列的长度。
希尔排序的示例:
3、算法实现:
public class sort {//希尔排序public static void main(String [] args){ int[]a={49,38,65,97,76,13,27,49,78,34,12,64,1}; System.out.println("排序之前:"); for(int i=0;i<a.length;i++) { System.out.print(a[i]+" "); } int d=a.length; while(true) { d=d/2; for(int x=0;x<d;x++) { for(int i=x+d;i<a.length;i=i+d) { int temp=a[i]; int j; for(j=i-d;j>=0&&a[j]>temp;j=j-d) { a[j+d]=a[j]; } a[j+d]=temp; } } if(d==1) { break; } } System.out.println("排序之后:"); for(int i=0;i<a.length;i++) { System.out.print(a[i]+" "); }}}
0 0
- java排序-希尔排序
- 希尔排序[Java实现]
- java-------希尔排序
- java希尔排序算法
- 希尔排序 Java
- java希尔排序
- java希尔排序
- Java实现希尔排序
- java的希尔排序
- 希尔排序----java实现
- java希尔排序
- (Java)希尔排序
- java希尔排序算法
- java的希尔排序
- Java代码 希尔排序
- Java-希尔排序
- Java 希尔排序
- java 希尔排序
- 怼JAVA第一周,MOCC作业
- 一个PHP+Mysql手工注入例子
- 【Java】の基础——JVM内存区域
- CodeForces
- CSS3 选择器—伪类选择器
- java 希尔排序
- Chrome手势插件
- vue2.0 子组件和父组件之间的传值
- 封装View,封装逻辑,脱光activity
- Discuz!开发之论坛主题列表页标题长度的限制方法
- 深度优先搜索(dfs)
- 使用HTML语言和CSS开发商业站点第一章
- 正则表达式大全
- ITester接口测试框架