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

建一个国外的网站西安seo关键词查询

建一个国外的网站,西安seo关键词查询,wordpress链接版权,交城有做网站的吗💗 💗 博客:小怡同学 💗 💗 个人简介:编程小萌新 💗 💗 如果博客对大家有用的话,请点赞关注再收藏 🌞 什么是插入排序 有一个已经有序的数据序列,要求在这个已经排好的数…

在这里插入图片描述

💗 💗 博客:小怡同学
💗 💗 个人简介:编程小萌新
💗 💗 如果博客对大家有用的话,请点赞关注再收藏 🌞

什么是插入排序

有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到一种新的排序方法–插入排序法
好比可以用打牌时对摸起的牌根据牌的点数来对其进行插入排列来描述。

在这里插入图片描述

实现思想

当插入第i(i>=1)个元素时,前面的array[0],array[1],…,array[i-1]已经排好序,此时用array[i]的排序码与
array[i-1],array[i-2],…的排序码顺序进行比较,找到插入位置即将array[i]插入,原来位置上的元素顺序后移。 例如:
有一个有序区间,选其中一个数插入其中,这个数依次比较如果匹配失败则,换到下一个数比较。

在这里插入图片描述

插入排序的时间复杂度

时间复杂度是O(n^2) 在最坏情况下逆序需要每个数轮流插入 根据等差数列 1+2+3+…+n-1
所以时间复杂度是O(n^2) 在最好情况下只需要轮一遍 所以时间复杂度为O(n^2)

在这里插入图片描述

插入排序的稳定性

稳定性意思是两个元素之间的相对位置没有改变 如 4444 相等, 44在左 44在右,插入排序之后
44 仍在左 44 仍在右,这两个元素的相对位置没有改变。

在这里插入图片描述

代码实现

#include <stdio.h>
void InsertSort(int* arr, int n)
{for (int i = 0; i < n - 1; i++){int end = i;int tmp = arr[end + 1];while (end >= 0){if (tmp <= arr[end]){arr[end + 1] = arr[end];end--;}else{break;}}arr[end + 1] = tmp;}}int main()
{int arr[] = { 1,2,4,5,6,7,8,9,3 };int n = (sizeof(arr) / sizeof(arr[0]));InsertSort(arr, n);for (int i = 0; i < n; i++){printf("%d ", arr[i]);}return 0;
}

插入排序的优化——希尔排序

什么是希尔排序

希尔排序又称缩小增量排序,它通过比较相距一定间隔的元素来进行,各趟比较所用的距离随着算法的进行而减小,直到只比较相邻元素的最后一趟排序为止。
通俗大意是:把原本一组的数组间断性分为几个数组,在对已经分完的数组进行插入排序

在这里插入图片描述

希尔排序的时间复杂度及稳定性

因为希尔排序的时间复杂度不好计算,因为gap的取值 方法很多,导致很难去计算。 时间复杂度;O(logNN)或者O(log3NN)
稳定性:不稳定

实现思想

先进行预排序,让数组接近有序,等到与排序之后 数组大多是有序的状态,大致上是有序数组,可进行插入排序。

void ShellSort(int* arr, int n)
{int gap = n;while (gap > 1){gap = gap / 3 + 1;//gap>1时是预排列 gap==1时相当有序排列for (int i = 0; i < n - gap; i += gap)//把间隔为gap的元素进行插入排序{int end = i;int tmp = arr[end + gap];while (end >= 0){if (tmp < arr[end]){arr[end + gap] = arr[end];end -= gap;}else{break;}}arr[end + gap] = tmp;}}
}int main()
{int arr[] = { 1,2,4,5,6,7,8,9,3 };int n = (sizeof(arr) / sizeof(arr[0]));InsertSort(arr, n);for (int i = 0; i < n; i++){printf("%d ", arr[i]);}return 0;
}

在这里插入图片描述

http://www.bdqn1.cn/news/75.html

相关文章:

  • 中文网站建设入门模板式自助建站
  • 怎么用php做网站华为手机软文范文300
  • 网页上传 网站百度快速收录3元一条
  • 哪个网站做五金冲压的哪些平台可以发布推广信息
  • 制作的网站怎么创建自己的网址
  • 企业网站后台管理系统seo 工具推荐
  • 一个网站要怎么做的吗搜索引擎营销成功的案例
  • 网站建设需要做的事情谷歌商店paypal官网
  • 新疆建设云网站营销型企业网站有哪些
  • 镇江网站制作网站建设营销推广公司
  • 鹤峰网站制作私人做网站的流程
  • 浙江网站建设企业上海网站推广系统
  • 东莞玩具加工东莞网站建设怎么做网络推广优化
  • 韩雪冬个人网站 北京北京seo排名公司
  • 网页设计与制作教程欧静美seo查询排名软件
  • 网站备案会检查空间淘宝推广怎么做
  • 寻找做网站的公司阿里巴巴关键词排名优化
  • 京东网站是刘强冬自己做的吗seo诊断书
  • 青少年宫网站开发手机优化是什么意思
  • 南京网站建设排名b2b免费发布网站大全
  • 做网站一般用什么程序阿里域名注册官网
  • 做翻译赚钱的网站好郑州百度推广托管
  • 新手学做免费网站软件好网络舆情监测系统软件
  • 温州网站建设和推广万能搜索
  • 互联网公司网站建设ppt百度搜索app
  • 公司企业网站建设南宁seo排名外包
  • 织梦网站发稿说明今日头条新闻军事
  • 成都网络营销搜索引擎优化的缺点包括
  • 广东省网站备案查询百度新闻最新消息
  • 动态网站站内搜索百度关键词流量查询