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

电商网站建设源代码wordpress 调查系统

电商网站建设源代码,wordpress 调查系统,建网站 铸品牌 做推广,大型广告公司网站建设文章目录 1.概念✅2.希尔排序#x1f388;3.代码实现✅3.1 直接写✨3.2 函数✨ 4.总结✅ 1.概念✅ 排序是数据处理的基本操作之一#xff0c;每次算法竞赛都很多题目用到排序。排序算法是计算机科学中基础且常用的算法#xff0c;排序后的数据更易于处理和查找。在计算机发展… 文章目录 1.概念✅2.希尔排序3.代码实现✅3.1 直接写✨3.2 函数✨ 4.总结✅ 1.概念✅ 排序是数据处理的基本操作之一每次算法竞赛都很多题目用到排序。排序算法是计算机科学中基础且常用的算法排序后的数据更易于处理和查找。在计算机发展的历程中在排序算法的研究一直深受人们重视出现了很多算法在思路、效率、应用等方面各有特色。通过学习排序算法读者可以理解不同算法的优势和局限性并根据具体情况选择最合适的算法以提高程序的性能和效率。学习排序算法还有助于培养逻辑思维和问题解决能力在解决其他类型的问题时也能够应用到类似的思维方法。 2.希尔排序 希尔排序Shell Sort是一种基于插入排序的排序算法可以看作是插入排序的改进版。它通过将数组分成若干个子数组每个子数组中的元素间隔为一个增量 gap来进行分组排序逐步缩小这个增量最后当增量为 1 时变成普通的插入排序。 以a[]{12, 54, 34, 2, 38} 中的6个数从小到大排序为例说明希尔排序的步骤  1gap 6/2 3对间距为3的数排序。共3组数的间距为3这四组数分别是{12 2}、{34, 3}、{54, 8}。分别在这3组数内部做插入排序。例如{12,2}做插入排序的结果是{34,3}。在这一轮每组内的数做插入排序时都要进入代码执行交换操作共执行3次。经过这一轮操作较大的数挪到了右边更靠近它们排序后的终止位置。如下图  2gap 3/2 1对间距为1的数排序实际上gap1的希尔排序就是基本的插入排序。不懂的看这篇文章 插入排序 假如说:a[]{12, 54, 34, 2, 38} 有8个数 当gap 4/2 2对间距为2的数排序。共有2组数的间距为2分别是{2, 8, 34, 0}、{3, 12, 34, 0}。分别做插入排序如下图 3.代码实现✅ 3.1 直接写✨ #include stdio.hint main() {int arr[] {12, 11, 13, 5, 6,8}; // 原始数组int n sizeof(arr) / sizeof(arr[0]); // 数组大小int i; // 插入排序实现for ( i 1; i n; i) {int key arr[i]; // 当前待插入的元素int j i - 1;// 将大于key的元素移到右侧while (j 0 arr[j] key) {arr[j 1] arr[j];j--;}// 插入当前元素到正确的位置arr[j 1] key;}// 打印排序后的数组printf(排序过后的数组: \n);for ( i 0; i n; i) {printf(%d , arr[i]);}printf(\n);return 0; }3.2 函数✨ #include stdio.h// 希尔排序函数 void shellSort(int arr[], int n) {int gap,i;// 确定初始增量for ( gap n / 2; gap 0; gap / 2) {// 从gap开始进行插入排序for ( i gap; i n; i) {int temp arr[i]; // 当前待排序的元素int j;// 移动大于temp的元素到gap位置for (j i; j gap arr[j - gap] temp; j - gap) {arr[j] arr[j - gap];}arr[j] temp; // 插入当前元素}} }// 打印数组的函数 void printArray(int arr[], int n) {int i;for ( i 0; i n; i) {printf(%d , arr[i]);}printf(\n); }int main() {int arr[] {12, 34, 54, 2, 3,8}; // 原始数组int n sizeof(arr) / sizeof(arr[0]); // 数组大小shellSort(arr, n); // 调用希尔排序函数printf(排序过后的数组: \n);printArray(arr, n); // 打印排序后的数组return 0; }4.总结✅ 希尔排序在多大程度上改善了插入排序可以直接对比两个代码的计算量感兴趣的小伙伴自己思考一下。   根据严格的算法分析希尔排序的计算复杂度约为O(n^1.5)当n10^5时计算量约为3000万次远小于O(n^2)的100亿次。   最后概括希尔排序的思路。希尔排序是一种基于插入排序的排序算法它将一个序列分成若干个子序列对每个子序列使用插入排序然后在对整个序列使用一次插入排序。shellSort()函数使用gap对数组进行分组然后对每个子序列使用插入排序最后将整个序列使用插入排序在插入排序过程中每次将元素插到已经排好序的序列中而这个已经排好序的序列是由前面的插入排序操作得到的每次操作都相当于将元素插到一个较小的序列中因此可以更快地将元素插到正确的位置。 Perspective-takling
http://www.w-s-a.com/news/498649/

相关文章:

  • 成都关键词seo推广平台手机端关键词排名优化软件
  • 学做软件的网站卡盟平台
  • 网站构建建设案例展示关于做服饰网站的首页
  • 如何建设网站论坛凡科建站手机版登录
  • 建设银行门户网站惠州公司网站建设价格
  • 用python开发网站网站如何取消验证码
  • 公司做企业网站互联网建网站
  • 建网站需要的费用公司注册后怎么做网站
  • 宣传电脑的网站开发运动网站建设教程
  • 网站建设公司都会有哪些花销做网站公司商丘
  • 网站风格有哪些软件定制和开发
  • 公司网络维护具体做什么河南网站推广优化公司哪家好
  • 中学生制作的网站常平哪里有招计算机网站开发的
  • 原创网站模版苏州响应式网站建设
  • 做海报在哪个网站可以找素材网址申请注册方法
  • 网站建设分哪些类别别人做的网站不能用
  • 做网站网站会怎么样全国高校校园网站联盟建设
  • 整站下载器 做网站地图地产项目网站设计
  • 创意设计网站公司手机wap网站建设多少钱
  • 甘肃省第八建设集团公司网站seo高级优化方法
  • 精美的商城网站介绍最多人用的wordpress子主题
  • 检察门户网站建设情况俄外长抵达北京
  • 老电脑做网站服务器网站在线留言如何做
  • 南宁广告公司网站建设小程序源码破解
  • 沛县做网站xlec网站建设开发方式包括哪些方面
  • 山西网站建设 哪家好四川城乡和建设厅网站
  • 有瀑布流的网站小型商城网站
  • 百石网怎么做网站二次开发软件
  • 网站域名是什么东西制作网页哪家好
  • 合肥网站建设团队简述网站内容管理流程