码迷,mamicode.com
首页 > 编程语言 > 详细

排序算法之希尔排序

时间:2019-01-02 23:21:32      阅读:290      评论:0      收藏:0      [点我收藏+]

标签:思想   com   记录   分享   公众号   class   代码实现   直接插入排序   atp   

概述

希尔排序是插入排序的一种更高效的改进版本.

希尔排序的基本思想是: 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止

就是将插入排序分组一下

分组排序步骤如下:

  1. 选定一个增量, 即将数组分为几组
  2. 根据增量分别对几个分组进行插入排序
  3. 减小增量, 重复步骤1-2, 直到增量为1进行最后一次排序
技术分享图片

 

其时间空间复杂度为:

技术分享图片

 

Java代码实现

技术分享图片

 

技术分享图片

 

 

可以关注一下鄙人的公众号, 谢谢各位了!技术分享图片

排序算法之希尔排序

标签:思想   com   记录   分享   公众号   class   代码实现   直接插入排序   atp   

原文地址:https://www.cnblogs.com/hujingnb/p/10181610.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!