java 排序算法实现 其五:希尔排序
来源:互联网 发布:游戏碎片整理软件 编辑:程序博客网 时间:2024/05/01 22:02
希尔排序是第一批将冲破二次时间屏障的排序算法之一,名称源于它的发明者:Donald Shell
希尔排序的思想是:
先将要排序的一组数按某个增量gap(n/2,n为要排序数的个数)分成若干组,每组中记录的下标相差gap.对每组中全部元素进行直接插入排序,然后再用一个较小的增量(gap/2)对它进行分组,在每组中再进行直接插入排序。当增量减到1时,进行直接插入排序后,排序完成。
* 希尔排序 * @param arr */private static void shellSort(int[] arr) {//第一次的gapint gap = arr.length;while (true) {gap = (int) Math.ceil(gap / 2);for (int x = 0; x < gap; x++) {for (int i = x + gap; i < arr.length; i += gap) {//对每一组进行直接选择排序int j = i - gap;int temp = arr[i];for (; j >= 0 && temp < arr[j]; j -= gap) {arr[j + gap] = arr[j];}arr[j + gap] = temp;}}if (gap == 1) {break;}}}
0 0
- java 排序算法实现 其五:希尔排序
- 用JAVA实现排序算法之五:希尔排序
- java实现希尔排序算法
- java实现希尔排序算法
- java希尔排序算法实现
- 排序算法五:希尔排序
- 【排序算法】希尔排序(java实现)
- java实现简单排序算法:希尔排序
- 排序算法之希尔排序 java实现
- Java排序算法(五)--希尔排序(ShellSort)
- 实现希尔排序算法。
- Java实现选择排序、插入排序、希尔排序算法
- 经典排序算法(二)--插入排序、希尔排序(Java实现)
- java希尔排序算法
- java希尔排序算法
- java希尔排序算法
- Java算法-希尔排序
- Java排序算法 希尔排序
- SQL Server修改列的类型时,弹出不允许保存更改对话框的解决方法
- TOMCAT内存溢出
- Dynamics CRM2013 业务规则的新建、激活与删除
- Flatten Binary Tree to Linked List
- protobuf的安装
- java 排序算法实现 其五:希尔排序
- PAT 1023. Have Fun with Numbers (20)
- 简单的TestNG.xml在Eclipse中跑TestNG suite
- 当今世界十大经典算法
- Css控制显示文本个数
- IOS开发之使用Speex格式实现简单的语音聊天功能(二)
- JAVA文件的上传与下载的例子
- Facebook API学习获取FB用户信息
- sybase的分页处理