希尔排序
来源:互联网 发布:ubuntu u盘安装 编辑:程序博客网 时间:2024/06/16 07:22
思想:建立于插入排序方法上,解决插入排序多次移动的问题:
package d08希尔排序;public class ShellSort { //排序方法 public static void sort(int [] arr){ //初始化一个间隔 int h = 1; //计算最大间隔 while(h<arr.length/3 ){ h=h*3+1; } while(h>0){ //进行插入排序 int tmp = 0; for(int i = h;i<arr.length;i++){ //与前面比较 tmp = arr[i]; int j=i; while(j>h-1&&arr[j-h]>=tmp){ arr[j]=arr[j-h]; //比tmp大的全部右移 j-=h; } arr[j]=tmp; } //减小间隔 h=(h-1)/3; } }}
阅读全文
0 0
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- 希尔排序
- To Introduce An Anime
- 微信内置浏览器私有接口WeixinJSBridge介绍
- 【9月20日】 Improved Pattern Learning for Bootstrapped Entity Extraction(上)
- 继承与多态
- Android 控制状态栏和导航栏
- 希尔排序
- 二叉树中两个节点的最低公共父节点
- C语言实现学生成绩管理系统
- Egret笔记
- 处理类型(auto,decltype)----C++初学之路
- 杭电acm2036:凹凸多边形面积
- web应用实现filter
- Django | requirement.txt 生成
- WUST OJ:2058: 划水的魅力(spfa)