希尔排序讲解
希尔排序是插入排序的一种,也被称为“缩小增量排序”,是直接插入排序算法的一种更高效的改进版本,由D.L.Shell于1959年提出。 其基本原理是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序。随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。 希尔排序属于插入类排序,是将整个无序列分割成若干小的子序列分别进行插入排序的方法。它利用了直接插入排序算法的两个特性:一是当待排序的原序列中大多数元素都已有序时,元素比较和移动的次数较少;二是当原序列的长度很小时,即便所有元素都是无序的,元素比较和移动的次数也很少。 在希尔排序中,首先将待排序的原序列划分成很多小的序列(子序列),由于每个子序列中的元素较少,对这些子序列进行直接插入排序效率较高。这个过程可能会进行多次,每次称为一趟。每一趟都将前一趟得到的整个序列划分为不同的子序列,并再次对这些子序列进行直接插入排序。最后由这些子序列组成的整个序列中的所有元素就基本有序了,此时再在整个序列上进行最后一次的直接插入排序,整个序列的排序就完成了。需要注意的是,希尔排序是非稳定排序算法。
答案问题点击 举报反馈
提到的作品
相关问答
热门问答
- 1 暗影魔城摩璎是什么角色
- 2 西行纪2悟空归来完整版
- 3 西行纪第四卷全新未拆封
- 4 元尊阅读小说免费阅读
- 5 西行纪的男主
- 6 悟空龙珠卡牌二次元热血游戏
- 7 传奇海盗哥尔D罗杰的结局
- 8 元尊校对版全本TXT下载
- 9 动漫在线观看免费完整版完美世界
- 10 龙珠卡牌游戏推荐
- 11 电影的导演和编剧
- 12 画孙悟空龙珠教程
- 13 龙珠大魔动漫免费观看高清
- 14 西行纪不更新了嘛
- 15 龙珠超第二季2020年几月上映
- 16 孙悟空最帅的照片大全
- 17 龙珠黑悟空怎么来的
- 18 海贼王宣布停播是第几集
- 19 西行纪 主角
- 20 降序排列啥意思
- 21 侯明昊异人之下演员表
- 22 西行纪第二季17集
- 23 狐妖小红娘介绍3000字
- 24 大网红复出
- 25 元尊蟒雀吞龙
- 26 西行纪第五季什么时候出2023
- 27 龙珠超第二季免费观看 8k
- 28 东方月初和苏苏的结局是什么
- 29 海贼王人物希尔
- 30 一人之下电影免费播放观看