java排序算法之希尔排序
发布日期:2022-02-10 13:35:55
浏览次数:17
分类:技术文章
本文共 735 字,大约阅读时间需要 2 分钟。
希尔排序的实质就是分组插入排序,该方法又称缩小增量排序先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。因为直接插入排序在元素基本有序的情况下(接近最好情况),效率是很高的,因此希尔排序在时间效率上比前两种方法有较大提高。步长的选择是希尔排序的重要部分。
注意:最终增量必须为1,相当于进行最后一次直接插入排序。
package demosort;public class ShellSort { /** * 基本思想:算法先将要排序的一组数按某个增量d(n/2,n为要排序数的个数)分成若干组, * 每组中记录的下标相差d.对每组中全部元素进行直接插入排序 * 然后再用一个较小的增量(d/2)对它进行分组,在每组中再进行直接插入排序。 * 当增量减到1时,进行直接插入排序后,排序完成。 */ public ShellSort(){ int a[]={ 1,54,6,3,78,34,12,45,56,100}; double d1=a.length; int temp=0; while(true){ d1= Math.ceil(d1/2); int d=(int) d1; for(int x=0;x=0&&temp
转载地址:https://blog.csdn.net/zoran_/article/details/52505296 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2024年03月20日 06时02分18秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
java图片延迟加载_jQuery实现图片延迟加载
2019-04-21
java开发加入购物车功能_java web开发——购物车功能实现
2019-04-21
Java虚拟机不能满足_深入理解Java虚拟机--读书笔记1/3
2019-04-21
hanlp java api_java分词工具hanlp介绍
2019-04-21
nginx php 源码安装,Nginx1.12.2加php7.2.0的编译安装
2019-04-21
php 删除字节,php – 删除无效/不完整的多字节字符
2019-04-21
php 实现版本号对比,如何在PHP中实现比较版本号
2019-04-21
php sql 给数据库追加内容,php如何向数据库中的某串数据后追加内容【急】
2019-04-21
php微信小程序获取用户信息,微信小程序授权获取用户详细信息openid的实例详解...
2019-04-21
Java三元运算和if,Java三元运算符与<JDK8兼容性中的if / else
2019-04-21
php date 函数用法,php中date()日期时间函数使用方法
2019-04-21
php除法获取整数和余数,PHP除法取整和取余数
2019-04-21
java迷宫路径,Java中的迷宫路径查找器
2019-04-21
php substr cnblog,php中substr用法示例
2019-04-21
php链接怎么截取,PHP 截取网页中的固定种子链接
2019-04-21
iis运行不起来php报500,解决IIS上安装thinkphp6运行报500错误
2019-04-21