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

网站设计制作全网优惠300m空间够用吗 wordpress

网站设计制作全网优惠,300m空间够用吗 wordpress,数据网站建设成本,跨境浏览网站目录 一. 直接插入排序 基本思想 代码实现 时间和空间复杂度 稳定性 二. 希尔排序 基本思想 代码实现 时间和空间复杂度 稳定性 一. 直接插入排序 基本思想 把待排序的记录按其关键码值的大小依次插入到一个已经排好序的有序序列中#xff0c;直到所有的记录插入完为止直到所有的记录插入完为止得到一个新的有序序列。 图解 代码实现 //直接插入排序 void InsertSort(int* a, int n) {for (int i 0; i n - 1 ; i){int j i;int tmp a[j 1]; //保存待排序元素while (j 0){if (tmp a[j]) //将a[j1]插入有序子表a[j 1] a[j]; //记录后移位置elsebreak;j--;}a[j 1] tmp; //插入到正确位置} } 时间和空间复杂度 时间复杂度o(n^2) 空间复杂度o(1) 平均时间复杂度也是 O(n^2)空间复杂度为常数阶 O(1)具体时间复杂度和数组的有序性也是有关联的。 当待排序数组是有序时是最优的情况只需当前数跟前一个数比较一下就可以了这时一共需要比较 N-1 次时间复杂度为 O(N)。最坏的情况是待排序数组是逆序的此时需要比较次数最多最坏的情况是 O(n^2)。 说明元素集合越接近有序直接插入排序算法的时间效率越高 稳定性 一种排序实施前后关键码相同的任意两个对象其前后次序没有发生变化就说明这个排序是稳定的否则是不稳定的。 直接插入排序稳定排序 二. 希尔排序 希尔排序又称缩小增量排序也是一种插入排序类的方法此种方法是在直接插入排序的基础上改进的在时间效率上有了很大的提高。 基本思想 以增量为步长划分子序列即同一子序列中的逻辑上相邻元素其下标步长等于增量。对每一个子序列进行直接插入排序。不断缩小增量当增量为1时所有数组元素都在一个子序列中排好序。 图示 选择增量 gap n / 2缩小增量以 gap gap / 2 的方式 注意增量序列的最后一个增量值必须为1才行 代码实现     代码一 多组并排方式 图解 //希尔排序 void ShellSort(int* a, int n) {int gap n; //增量初始值while (gap 1){gap gap / 2; //缩小增量for (int i 0; i n - gap; i) //对每一组进行直接插入排序{int j i;int tmp a[j gap];while (j 0){if (tmp a[j]){a[j gap] a[j];j - gap;}elsebreak;}a[j gap] tmp;}} }代码二 一组走完再走下一组 void ShellSort(int* a, int n) {int gap n / 2; //增量初始值//gap组进行插入排序for (int j 0; j gap; j){for (int i j; i n - gap; i gap) //对一组进行直接插入排序{int end i;int tmp a[end gap];while (end 0){if (tmp a[end]){a[end gap] a[end];end - gap;}elsebreak;}a[end gap] tmp;}} }说明代码一是对代码二的改进并没有提升效率两种方式在效率及性能上没有本质的区别。 时间和空间复杂度 时间复杂度 O(n^1.3) 空间复杂度 O(1) 说明1. 希尔排序是对直接插入排序的优化。            2. 当gap 1时都是预排序目的是让数组更接近于有序。当gap 1时数组已经接近有                 序的了这样就会很快。这样整体而言可以达到优化的效果。            3. 希尔排序的时间复杂度不好计算因为gap的取值方法很多导致很难去计算因此在一                些书中给出的希尔排序的时间复杂度都不固定 稳定性 希尔排序不稳定排序。预排序时相同的数据可能分在不同的组
http://www.w-s-a.com/news/109938/

相关文章:

  • html网站设计实例代码重庆多个区划定风险区
  • 推广方案设计同一个网站可以同时做竞价和优化
  • 论坛网站开发 go电商扶贫网站建设
  • 个人建站教程优秀的定制网站建设
  • 农村建设集团有限公司网站下载百度极速版
  • 微信公众号个人可以做网站么做企业网站需要哪些
  • 如何用付费音乐做视频网站wordpress如何设置首页
  • 杨凯做网站网站首页 排版
  • 网站图片标签江苏省建设类高工申报网站
  • 网站建设中的英文什么网站可以做医疗设备的
  • 柳州购物网站开发设计服装网站的建设与管理
  • 做网站的上海市哪家技术好北京百姓网免费发布信息
  • 网站文章排版制作网站软件
  • 云南网站开发公司网站商城定制网站建设
  • 企业网站的新闻资讯版块有哪些肇庆自助建站模板
  • 怎么做平台网站吗为网站做seo需要什么
  • 苏州吴江建设局招标网站海南网站搭建价格
  • 网站建设主要研究内容用哪个程序做网站收录好
  • 网站建设如何开单装修设计图免费
  • 做内容网站赚钱吗seo推广具体做什么
  • 连山区网站建设seo简历
  • 自助建站系统官方版太仓高端网站制作
  • 怎样只做自己的网站建设银行唐山分行网站
  • 咸阳鑫承网站建设软件开发公司网站模板
  • 百度怎么免费做网站网站建设大作业有代码
  • 小说素材网站设计素材网站特点
  • 如何建设一个好的网站WordPress主题设置数据库
  • 网站被模仿十堰网站制作公司
  • 怎么样做免费网站个人网站备案幕布
  • 做ppt的动图下载哪些网站制作一个网站需要多少时间