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

网站备案被取消公司自己做网站

网站备案被取消,公司自己做网站,旅游网站建设设计公司,网站后台维护主要做什么目录 前言 一.插入排序 1.思想 2.实现 3.特点 二,希尔排序 1.思想 2,实现 3.特点 前言 排序算法是计算机科学中的基础工具之一#xff0c;对于数据处理和算法设计有着深远的影响。了解不同排序算法的特性和适用场景#xff0c;能够帮助程序员在特定情况下选择最合适的… 目录 前言 一.插入排序 1.思想 2.实现 3.特点 二,希尔排序 1.思想 2,实现 3.特点 前言 排序算法是计算机科学中的基础工具之一对于数据处理和算法设计有着深远的影响。了解不同排序算法的特性和适用场景能够帮助程序员在特定情况下选择最合适的算法从而提高程序的效率和性能。本节我们讲述插入排序和希尔排序。 一.插入排序 1.思想 插入排序基本思想是将一个元素逐个插入到已经排好序的元素序列中从而得到一个新的有序序列。插入排序的步骤如下 初始状态 假设第一个元素已经是有序序列可以将其视为一个只包含一个元素的序列。 从第二个元素开始 将当前元素与已经排好序的元素比较找到合适的位置插入。 插入操作 将当前元素插入到合适的位置同时调整其他元素的位置以保持已有序序列的有序性。 重复 重复步骤2和步骤3直到所有元素都被插入到有序序列中整个序列变得有序。 2.实现 void InsertSort(int* a, int n) {for (int i 0; i n - 1; i){int end i;int tmpa[end1];while (end 0){if (tmp a[end]){a[end 1] a[end];end--;}else{break;}}a[end 1] tmp;} } 时间复杂度:O(n^2) 空间复杂度O(1) 稳定性:稳定 3.特点 1.优势: 对小型数据集的适用性 插入排序在对小型数据集或基本有序的数据集进行排序时表现良好。 适用于链表 插入排序在对链表进行排序时也是一种有效的选择因为它可以通过改变节点的链接来进行排序而无需移动大量数据。 稳定性 插入排序是一种稳定的排序算法即相等元素的相对顺序在排序前后保持不变。 2,缺点: 时间复杂度 插入排序的平均和最坏情况时间复杂度均为O(n^2)其中n是数组的长度。这使得插入排序在处理大规模数据时效率相对较低 对逆序数据的性能较差 当输入数据基本逆序排列时插入排序的性能会显著下降。每次插入都需要移动大量的元素导致算法效率低下。 二,希尔排序 1.思想 插入排序在数组接近有序的时候效率较高,我们就先尝试让数组接近有序.再使用插入排序,这是希尔排序 基本思想是通过将待排序的元素分组对每组使用插入排序然后逐步减小每组的元素数量最终完成整个序列的排序。希尔排序的主要思想包括以下几个步骤 分组数 选择一个递减的序列这个序列的最后一个元素通常是1。常见的步长序列选择有希尔自己提出的 N/2其中N是数组长度或其他更复杂的序列。 分组 将待排序的元素按照步长分成若干个子序列每个子序列相互独立。 对每个子序列进行插入排序 对每个子序列应用插入排序算法将子序列内的元素进行排序。 减小组 缩小步长重复步骤2和步骤3直到步长为1。 最终插入排序 当步长为1时整个序列基本有序此时使用插入排序对整个序列进行一次排序。 2,实现 void ShellSort(int* a, int n) {int gapn;while (gap 1){gap gap / 3 1;for (int j 0; j gap; j){for (int i 0; 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;}else{break;}}a[end gap] tmp;}}} } 第一个while循环控制每一组的元素个数,当每一组的元素个数为1是,相当于插入排序,第一个for循环和第二个for循环控制对每一组进行插入排序 时间复杂度:大约O(n^1.3) 空间复杂度O(1) 稳定性:不稳定 3.特点 1.优势: 相对简单 希尔排序的实现相对简单不需要使用递归只涉及到循环和插入排序的基本思想。这使得它在理解和实现上相对容易。 原地排序 希尔排序是一种原地排序算法它只需要一个常数级别的额外空间用于存储临时变量而不需要额外的数据结构。 相对高效 对于中等规模的数据集希尔排序通常比插入排序和冒泡排序等简单排序算法更高效。它通过逐步减小间隔先对较远距离的元素进行排序然后逐渐缩小间隔最终完成整体排序。这样可以使得部分元素在更早的阶段就趋于有序减少了插入排序的工作量。 2.缺点 不稳定性 希尔排序不是稳定的排序算法。当存在相等元素时它可能会改变它们的相对顺序。在某些应用场景中需要保持相等元素的相对位置关系这时候希尔排序可能不是最佳选择。 不适合小规模数据集 尽管希尔排序对于中等规模的数据集表现较好但对于小规模数据集其性能可能不如一些简单的排序算法。例如对于10个或更少的元素插入排序可能更为高效。
http://www.zqtcl.cn/news/894485/

相关文章:

  • 男女做那个的网站是什么深圳市8号公告
  • 做网站收款支付宝接口廊坊市网站建设公司
  • 文档下载网站 建设做cpa用什么网站
  • 网站制作合同注意事项百度网页版电脑版
  • 怎样做模板网站手机营销型网站制作
  • 如何采集网站内容如何做网站导航栏的搜索引擎优化
  • 网站关键词排名外包织梦大气婚纱影楼网站源码
  • 网站建设执行力冠县哪里有做网站的
  • 免费网站推广咱们做网络营销推广的应用场景
  • 深圳正规网站制作哪家公司好做网站代理属于开设赌场罪吗
  • 江西宜春市建设局网站wordpress博客下载器
  • 汕头站扩建效果图微信怎么引流营销呢
  • 小学学校网站建设计划wordpress博客示例
  • 德邦公司网站建设特点万网是什么
  • 天津武清网站开发广东省建筑网站
  • 青岛做外贸网站哪家好佛山网站建设哪家好
  • 网站关键词设置技巧wordpress 获得参数
  • 程序网站开发搜索引擎有哪些技巧
  • 网站模板上传教程响应式网站建设免费
  • 网站建设与设计ppt模板wordpress调用大全
  • wordpress信息修改佛山网站优化如何
  • 最权威的排行榜网站招网站开发人员
  • 北京通州住房和城乡建设部网站网站获取访客手机号源码
  • 网站开发与建设网站程序基础
  • 网站建设属于什么税php网站建设全程实例
  • 做网站语言排名2018淄博市沂源县建设局网站
  • 腾冲网站建设哪个电商平台最好
  • 重点实验室网站建设宁波seo优化服务
  • 怎么用手机做刷会员网站网页设计指什么
  • 小企业网站建设多少钱网页设计图片剧中