public class shellSort3{
public static void main(String args[]){
int a[] = {49,38,65,97,76,13,27,49,78,34,12,64,5,4,62,99,98,54,56,17,18,23,34,15,35,25,53,51};
double d1 = a.length;
int temp = 0;
while(true){
d1 = Math.ceil(d1/2);
int d = (int)d1;
for(int x = 0; x < d; x++){
for(int i = x + d; i < a.length; i += d){
int j = i - d;
temp = a[i];
for(j = i - d; j >= 0 && temp < a[j]; j -= d){
a[j + d] = a[j];
}
a[j + d] = temp;
}
}
if(d == 1){
break;
}
}
for(int i = 0; i < a.length; i++){
System.out.print(a[i] + " ");
}
}
}
java 希尔排序
希尔排序算法实现
本文介绍了一种希尔排序算法的实现过程,通过逐步减小增量并对子数组进行插入排序,最终实现整个数组的有序排列。代码示例展示了如何使用Java语言完成希尔排序,包括初始化数组、确定增量序列、执行排序及打印排序后的结果。
3万+

被折叠的 条评论
为什么被折叠?



