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

北京企业网站推广哪家好手机获取短信验证码 wordpress

北京企业网站推广哪家好,手机获取短信验证码 wordpress,企业宣传册模板,wordpress shortcode插件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/895763/

相关文章:

  • 保利建设开发总公司网站天津做网站外包公司有哪些
  • 汕头企业网站建设价格wordpress 加密查看
  • 专业做高校网站群管理系统网上推广赚钱的软件
  • 设计外包网站设计学网站
  • 如何进入正能量奖励网站建设高校图书馆网站的意义
  • 上城区商城网站建设企业官网制作公司
  • jsp获取网站域名wordpress dirname
  • 做二手设备的网站seo整站优化网站建设
  • 无锡网站建设多少钱app开发公司一个月可以赚多少钱
  • 湖南seo网站多少钱东莞三合一网站制作
  • 网站制作与防护费用免费做思维导图的网站
  • 做外国人生意的网站有哪些wordpress建站空间
  • 3g版和wap网站wordpress 手机显示
  • 免费物流公司网站模板贵阳制作
  • wordpress做导航站花店网站建设课程设计论文
  • 做公司网站按年收费做甜品的网站
  • 网站建设工作小组分工南通网络推广
  • 做网站的专业术语开发菏泽网站建设
  • 怎么样创建一个网站网页设计与制作课件和素材
  • 搭建网站 优帮云网站建设修改教程视频
  • 营销型网站传统网站做代理网站用什么软件
  • 公司网站进不去qq空间益阳网站设计公司
  • 网站建设培训报名找人做网站毕业设计
  • 工伤做实网站石家庄网站制作视频
  • 客栈网站建设代码访问不到自己做的网站
  • 网站的颜色用旧电脑做服务器建网站用
  • asp商品网站源码wordpress 花瓣网
  • 北京自考网官方网站网站内容管理
  • 广州做网站的公安徽住房和城乡建设厅新网站
  • 太仓公司网站建设电话wordpress在本地建站