当前位置: 首页 > news >正文

东莞做网站最好有哪些公司百度广告买下的订单在哪里找

东莞做网站最好有哪些公司,百度广告买下的订单在哪里找,新疆建设局网站首页,网站备案后需要年检吗文章目录 前言一、希尔排序的思想二、使用步骤总结 前言 希尔排序可以说是插入排序的一种变种。无论是插入排序还是冒泡排序,如果数组的最大值刚好是在第一位,要将它挪到正确的位置就需要 n - 1 次移动。也就是说,原数组的一个元素如果距离它…

文章目录

  • 前言
  • 一、希尔排序的思想
  • 二、使用步骤
  • 总结


前言

希尔排序可以说是插入排序的一种变种。无论是插入排序还是冒泡排序,如果数组的最大值刚好是在第一位,要将它挪到正确的位置就需要 n - 1 次移动。也就是说,原数组的一个元素如果距离它正确的位置很远的话,则需要与相邻元素交换很多次才能到达正确的位置,这样是相对比较花时间了。希尔排序就是为了加快速度简单地改进了插入排序,交换不相邻的元素以对数组的局部进行排序。

一、希尔排序的思想

采用插入排序的方法,先让数组中任意间隔为 h 的元素有序,刚开始 h 的大小可以是 h = n / 2,接着让 h = n / 4,让 h 一直缩小,当 h = 1 时,也就是此时数组中任意间隔为1的元素有序,此时的数组就是有序的了。
为方便理解我还准备了图片:
在这里插入图片描述
如果还是不懂的话我还给你准备了优质的文章讲解:希尔排序

二、使用步骤

public class ShellSort {public static int[] shellSort(int arr[]) {if (arr == null || arr.length < 2) return arr;int n = arr.length;// 对每组间隔为 h的分组进行排序,刚开始 h = n / 2;for (int h = n / 2; h > 0; h /= 2) {//对各个局部分组进行插入排序for (int i = h; i < n; i++) {// 将arr[i] 插入到所在分组的正确位置上insertI(arr, h, i);}}return arr;}/*** 将arr[i]插入到所在分组的正确位置上* arr[i]] 所在的分组为 ... arr[i-2*h],arr[i-h], arr[i+h] ...*/private static void insertI(int[] arr, int h, int i) {int temp = arr[i];int k;for (k = i - h; k > 0 && temp < arr[k]; k -= h) {arr[k + h] = arr[k];}arr[k + h] = temp;}
}

总结

需要注意的是,对各个分组进行插入的时候并不是先对一个组排序完了再来对另一个组排序,而是轮流对每个组进行排序。

性质:
1、时间复杂度:O(nlogn)
2、空间复杂度:O(1)
3、非稳定排序
4、原地排序

http://www.dt0577.cn/news/54322.html

相关文章:

  • bootstrap建设淘宝网站免费新闻源发布平台
  • wordpress企业免费主题下载地址seo整站优化外包公司
  • 广告制作合同范本seo搜索引擎优化推广
  • 网站设计小图标怎样写营销策划方案
  • ueeshop建站靠谱吗天津百度网站排名优化
  • 拓之朴 做网站多少钱代写文章接单平台
  • 做阿里巴巴的网站的费用吗网上推广平台
  • 怎么做让网站排名靠前网站建设平台官网
  • 网站设计建设维护与更新短链接
  • 微信如何做网站关键词网站排名查询
  • 手机免费app开发制作平台sem优化是什么意思
  • 西安正规网站建设公司西安关键词排名软件
  • 怎么做网站端口代理百度收录入口在哪里
  • 做网站可以干嘛网络营销的好处
  • 网站建设公司信科网络百度投放广告一天多少钱
  • 海报制作哪个软件好宁波seo的公司联系方式
  • 可以建站的网站合肥网站排名
  • qq上传空间wordpress宁波seo如何做推广平台
  • flash网站的优缺点优化网站链接的方法
  • 男女做羞羞视频网站seo网站排名优化培训教程
  • 网站建设客服话术优化大师官方正版下载
  • 玉田做网站网络营销推广活动
  • 网站高端定制1个百度指数代表多少搜索
  • sem代运营托管公司阳城seo排名
  • 做海报的免费网站谷歌网页
  • 网站做app的软件百度推广助手客户端
  • 旅游网站策划营销浏览器谷歌手机版下载
  • 国外产品展示网站源码手机上怎么制作网页
  • 做电子商务系统网站搜索引擎优化的主要手段
  • 网站流量团队佛山seo培训