import java.io.IOException;
import Input.InputString;
/**
* 希尔排序
* @author xiaomi
* 2012.3.29
*/
public class ShellSort {
public static void main(String[] args) throws IOException{
String s = InputString.getString();
String[] str = s.split(" ");
int[] a = new int[str.length];
for(int i = 0;i < str.length;i++){
a[i] = Integer.parseInt(str[i]);
}
shellSort(a);
for(int i = 0;i < a.length;i++){
System.out.print(a[i]+" ");
}
}
public static void shellSort(int[] a){
for(int step = a.length/2;step > 0;step /= 2){
for(int begin = 0;begin<a.length;begin++){
for(int out = begin+step;out < a.length;out+=step){
int in = out;
int temp = a[out];
while(in>=step&&a[in-step]>temp){
a[in] = a[in-step];
in-=step;
}
a[in] = temp;
}
}
}
}
}
七大基本排序算法之冒泡排序
七大基本排序算法之选择排序
七大基本排序算法之插入排序
七大基本排序算法之希尔排序
七大基本排序算法之堆排序
七大基本排序算法之快速排序
七大基本排序算法之归并排序
分享到:
相关推荐
七种排序算法(包括直接插入排序,折半插入排序,希尔排序,冒泡排序,快速排序,简单选择排序,归并排序) 还有两道题 1./*设计并实现一个有效的对n个整数重排的算法,使得所有负数位于非负数之前,给出算法的性能...
七大排序算法如下: 交换排序:快速排序quicksort,冒泡排序bubblesort 选择排序:直接选择排序selectionsort,堆排序maxheapsort 插入排序:直接插入排序insertsort,希尔排序shellsort 合并排序:归并排序...
在第一版的基础上新加了对冒泡排序,直接插入排序,直接选择排序,希尔排序,归并排序,快速排序和堆排序这七种常用的排序方法的总结篇,方便大家复习,合适作为笔试面试前的复习资料。
七大排序算法C++实现,包括冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序、堆排序。代码随机生成数组来排序,MAX1定义了数组个数,用QueryPerformanceCounterday打印除了各算法用时。
包含(归并排序、堆排序、希尔排序、快速排序、冒泡排序、直接插入/选择排序)七种排序算法的C++代码实现
包括冒泡排序,直接插入排序,直接选择排序,希尔排序,归并排序,快速排序和堆排序这七种常用的排序方法和实现代码,并有配图的解释,直接明了,容易理解!
对冒泡排序,直接插入排序,直接选择排序,希尔排序,归并排序,快速排序和堆排序这七种常用的排序方法进行了详细的讲解
插入排序,选择排序,冒泡排序,归并排序,快速排序,堆排序,希尔排序的java实现
1. 熟练运用冒泡排序、选择排序、插入排序、希尔排序、快速排序、合并排序、堆排序等七种常见的内排序算法 2. 使用不同的数据结合计算各种算法的运行时间,验证算法的时间复杂性 3. 能够运用二路归并算法进行外排序 ...
包括冒泡排序,直接 插入排序,直接选择排序,希尔排序,归并排序,快速排序和堆 排序这七种常用的排序方法,
在第一版的基础上新加了对冒泡排序,直接插入排序,直接选择排序,希尔排序,归并排序,快速排序和堆排序这七种常用的排序方法的总结篇,方便大家复习,合适作为笔试面试前的复习资料。
这是本人在研一上课时所整理的文档,包括冒泡排序,直接插入排序,直接选择排序,希尔排序,归并排序,快速排序和堆排序这七种常用的排序方法,这些文章不仅使我在考试中取了不错的成绩,也为后来顺利面过迅雷,腾讯...
直接选择排序 希尔排序 归并排序 快速排序 堆排序等经典算法之七大排序白话讲解第二版
我用vs2017写的包含八大排序算法和随机生成数的算法。其中包括:冒泡排序,快速排序,选择排序,插入排序,桶排序,希尔排序,计数排序。其实只有七个排序算法。
这里提供了冒泡排序,插入排序,递归排序,基数排序,快速排序,选择排序,希尔排序这几种排序算法。里面有大量的注释,可以理解实现思路
包括冒泡排序,直接插入排序,直接选择排序,希尔排序,归并排序,快速排序和堆排序
目录插入排序直接插入排序基本原理代码实现性能分析折半插入排序代码实现希尔排序基本原理代码实现性能分析选择排序单向选择排序基本原理代码实现性能分析双向选择排序代码实现堆排序基本原理代码实现性能分析冒泡...
动态演示和分析七大排序算法「插入排序、选择排序、冒泡排序、归并排序 、希尔排序、快速排序、桶排序」的排序过程,使得排序过程更加容易理解。
MoreWindows白话经典算法之七大排序 这是本人在研一上课时所整理的文档,包括冒泡排序,直接插入排序,直接选择排序,希尔排序,归并排序,快速排序和堆排序