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

网站被百度k是什么意思网店装修网站

网站被百度k是什么意思,网店装修网站,一年的百度指数,产品详情页面设计1、简述: 希尔排序(Shells Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因 D.L.Shell 于 1959 年提出而得名。 希尔排…

1、简述:

希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因 D.L.Shell 于 1959 年提出而得名。

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

2、复杂度

时间复杂度:O(nlogn)~O(n²)    (取决于增量的序列)

空间复杂度:O(1)

3、稳定性:不稳定的

由于多次插入排序,我们知道一次插入排序是稳定的,不会改变相同元素的相对顺序,但在不同的插入排序过程中,相同的元素可能在各自的插入排序中移动,最后其稳定性就会被打乱,所以shell排序是不稳定的。

4、例子:

推导过程:格努增量进行分组,增量 = 序列长度/2;

#include <iostream>
using namespace std;int main() {int arr[8] = {45, 98, 66, 90, 88, 78, 25, 45};int len = sizeof(arr)/sizeof(arr[0]);int gap = len / 2;int count = 0; // 记录输出次数用的可删除while (gap >= 1) {cout<<++count<<"轮排序:"<<endl;// 将每个元素进行for (int i = gap; i < len; i++) {// 对同个分组内的元素进行比较for (int j = i - gap; j >= 0; j -= gap) {if (arr[j] <= arr[j + gap]) break;// 换位:方法一(交换两个数据不使用第三个变量)arr[j] = arr[j] + arr[j + gap] - (arr[j + gap] = arr[j]);// 换位:方法二(第三个变量)
//                int tmp = arr[j + gap];
//                arr[j + gap] = arr[j];
//                arr[j] = tmp;}}// 缩小增量gap = gap / 2;for (int a = 0;a < len;a++) {cout << arr[a] << " ";}cout<<endl;}cout<<"最后结果:";for (int i = 0;i < len;i++) {cout << arr[i] << " ";}return 0;
}

输出结果:

1轮排序:
45 78 25 45 88 98 66 90 
2轮排序:
25 45 45 78 66 90 88 98 
3轮排序:
25 45 45 66 78 88 90 98
最后结果:25 45 45 66 78 88 90 98

参考:

千锋教育-希尔排序:希尔排序为什么会那么牛那么快,能够证明吗? - 知乎

百度百科-希尔排序:百度百科-验证

生命不息,学习不止,若有不正确的地方,欢迎指正。

http://www.yayakq.cn/news/84949/

相关文章:

  • linx服务器怎么做网站资源猫
  • 个人可以做网站吗手机 网站 翻页 外部
  • python 做网站教程wordpress 浮动留言框
  • 在线免费建网站牡丹江市建设银行门户网站
  • 邯郸餐饮网站建设什么是网站的推广
  • 沧州企业做网站东莞网站推广怎么做
  • 中国城市建设官方网站安徽省工程建设信息网职称查询
  • 宣城高端网站建设wordpress中文免费主题下载
  • 检测网站安全如何自己开个网站平台
  • 泗阳做网站的wordpress发布时链接地址依然指向本地而不是域名解决方法
  • 网站系统功能流程图网站备案ip地址
  • 徐州丰县建设局网站淘客wordpress数据
  • 集团网站设计建设seo自然优化排名
  • 做企业网站设计黑河网站建设公司
  • 阿里巴巴网页设计教程天津网络优化推广公司
  • 张家界网站制作灌南网页设计
  • 商城网站里可以再放cms吗网站建设公司电话咨询
  • 广东双语网站建设多少钱自己做的网站360显示过期
  • 网站建设学习网站济南房产网二手房
  • 在线制作网站地图备案网站建设方案模板
  • 网站图片代码怎么做电子商务网站开发公司
  • 域名问题网站不更新上海网络营销推广方法
  • 软件项目和网站建设的区别wordpress设置文章显示图片
  • 网站没有域名设置网站推广有哪些举措
  • 博兴县建设局网站网站报备
  • 做牙齿的招聘网站南昌网站seo公司
  • 免费企业网站系统源码下载自己做返利网站吗
  • 大连网站开发多少钱用自己的电脑做网站划算
  • 免费php模板网站视频教学网站开发需求分析
  • 城市建设网站调查问卷南昌网站建设优化公司排名