用java实现Shell Sort
来源:互联网 发布:以色列 知乎 编辑:程序博客网 时间:2024/05/24 03:28
package sort;
public class ShellSort{
private int[] gap;
public void initGap(){
gap = new int[3];
gap[0] = 3;
gap[1] = 2;
gap[2] = 1;
}
public void sort(int[] data) {
initGap();// 初始化增量数组
for (int s = 0; s<gap.length; s++) {
int d = gap[s];// 得到每次增量大小
// 在当前增量d下对每个“隐形子序列”进行插入排序
for (int i=d; i<data.length; i++) {
if (data[i] < data[i-d]) {// 需要调整
int tmp = data[i];
int j;
for (j = i-d; j>=0 && tmp<data[j]; j-=d)// 插入排序实现
data[j+d] = data[j];
data[j+d] = tmp;
}
}
}
}
/**
* 测试
* @param args
*/
public static void main(String args[]) {
ShellSort test = new ShellSort();
int[] data = {70,23,40,10,80,20,90,100,75,60,45};
test.sort(data);
for (int i=0; i<data.length; i++)
System.out.print(data[i]+", ");
}
}
- 用java实现Shell Sort
- java shell sort
- JAVA Shell Sort
- 希尔排序算法(Shell Sort) Java实现
- Shell Sort C语言实现
- Java lambda 实现sort
- 希尔排序(Shell Sort)——插入排序法(Java实现)
- Program work 15. Shell Sort in Java
- Java 希尔排序(Shell Sort)
- shell sort
- shell sort
- shell sort
- shell sort
- shell sort
- shell sort
- Shell Sort
- shell sort
- shell sort
- HTTP中GET,POST方法之区别
- Javascript 垃圾回收机制 小结
- 我的工作态度
- 一个简单功能强大的Google Map 搜索源码
- Android判断手机是否飞行模式
- 用java实现Shell Sort
- Exception Description: The attribute [birthday] from the entity class [class beans.Employee] does not specify a temporal type.
- Android标题栏中显示加载进度条
- Mp4编码全介绍
- 普通Java类中获取jpa规范中的javaBean
- sql常用小知识
- 一个新的开始....
- 使用java实现http多线程下载
- 常用的一些 Linux 程序