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

电商网站设计流程许昌做网站哪家好

电商网站设计流程,许昌做网站哪家好,免费空间做网站,男女做恩爱视频网站目录 引言 堆排序的实现**堆的向下调整算法** 对排序的时间复杂度建堆的时间复杂度#xff1a;排序过程的时间复杂度#xff1a;总体时间复杂度#xff1a; 引言 堆排序#xff08;Heap Sort#xff09;是一种基于比较的排序算法#xff0c;利用堆的数据结构来实现。它的… 目录 引言 堆排序的实现**堆的向下调整算法** 对排序的时间复杂度建堆的时间复杂度排序过程的时间复杂度总体时间复杂度 引言 堆排序Heap Sort是一种基于比较的排序算法利用堆的数据结构来实现。它的时间复杂度为O(n log n)并且是原地排序算法不需要额外的存储空间这使得它在空间复杂度方面具有优势。 堆排序的关键在于构建和维护堆的性质。虽然堆排序的时间复杂度较好但在实际应用中由于其不具备插入和删除操作的优势因此在一些特殊方面很少被选择。 堆排序的实现 堆排序实现的基本思路为 建堆 升序建大堆 降序建小堆利用堆删除思想来进行排序 建堆和堆删除中都用到了向下调整因此掌握了向下调整就可以完成堆排序。 堆的向下调整算法 从给出的 一个数组逻辑上看做一颗完全二叉树。我们通过从根节点开始的向下调整算法可以把它调整成一个小堆。 向下调整算法有一个前提左右子树必须是一个堆才能调整。 如图 void Swap(int* a, int* b) {int c *a;*a *b;*b c; }void AdjustDwon(int* a, int n, int parent) {int child parent * 2 1;while(child n){if (child 1 n a[child 1] a[child]){//先假设左孩子最小不成立便改为右孩子child;}if (a[child] a[parent]){Swap(a[child], a[parent]);parent child ;child parent * 2 1;}elsebreak;} }在一个堆中根节点从0开始编号下标为 ii 0 的结点的左右孩子结点及父结点的下标: 左孩子:2i(i0) 右孩子:2i1 父节点: (i-1)/2 根据树的父子结点的联系来确定数组下标 void HeapSort(int* a, int n) {//起始i用n-1是数组的最后一个为n-1起始i为最后一个元素的父节点for (int i (n - 1 - 1) / 2;i 0;i--){AdjustDwon(a, n, i);}int end n - 1;//建好大堆,将最大值交换置数组的最后,然后排出最后一个元素,对前n-1的数组进行建堆while(end0){Swap(a[0], a[end]);AdjustDwon(a, end, 0);end--;} }对排序的时间复杂度 建堆的时间复杂度 在堆排序中首先需要将待排序的序列构建成一个最大堆。构建最大堆的时间复杂度是O(n)其中 n 是待排序序列的长度。这是因为我们只需要对具有父子关系的一半节点进行堆化操作而这一半节点通常是 n/2。 排序过程的时间复杂度 堆排序的排序过程包括了 n-1 次交换和堆调整的操作。每次交换涉及到堆顶元素与末尾元素的交换然后对剩余的 n-1 个元素进行堆调整。堆调整的时间复杂度为O(log n)。因此排序过程的总时间复杂度为 O((n-1) * log n)约等于O(n log n)。 总体时间复杂度 将建堆和排序过程的时间复杂度结合起来堆排序的总体时间复杂度为 O(n n log n)。在大 O 表示法中通常会忽略掉低阶项和常数系数因此可以简化为 O(n log n)。 堆排序的时间复杂度是相对较好的且具有原地排序的特点。然而需要注意的是堆排序在实际应用中可能会因为其不具备稳定性相同元素的相对位置可能发生变化和对缓存的不友好等原因而被其他算法替代。
http://www.zqtcl.cn/news/592772/

相关文章:

  • 天河建设网站多少钱网络公司网站样本
  • 做的精美的门户网站推荐附近编程培训机构
  • 台州黄岩做网站太原网站建设王道下拉惠
  • 深圳设计网站公司互联网服务平台投诉中心
  • 做seo网站优化哪家强济南网站建设公司排名
  • tp5网站文档归档怎么做手机虚拟机哪个好用
  • 网站建设公司的业务范围万网做网站多少钱
  • 做网站要用写接口6wordpress 汽车租赁
  • 网站开发方向paypal账号注册
  • 如何选择做pc端网站重庆平台网站建设企业
  • 一个人做网站好累电子商城采购流程
  • 网站制作维护价格信息网站建设方案
  • 如何选择建网站公司能看人与动物做的网站
  • 温州网站建设方案外包不能访问子目录的网站
  • 建设拼多多一样网站需要多少钱wordpress企业站主题免费
  • 无锡网站制作哪家公司好做微信文章的网站
  • 网站 制作信产部网站备案
  • 做流程图表的网站网络营销推广网站收录
  • iis5.1怎么新建网站电子商务网站建设与管理实训内容答案
  • 做网站背景步骤知名的vi设计公司
  • 中国室内设计师联盟网站我注册过的网站
  • 如何给自己的公司做网站网站设计电商首页
  • 成都网站开发培训综合网站开发实训总结
  • 个人备案网站名称文学网站开发
  • 花钱做推广广告哪个网站好泗洪网页设计
  • 望牛墩镇网站建设公司网站建设企业熊掌号
  • 做网站一般会出现的问题静态网站的好处就是安全性好从而
  • 做海鲜代理在什么网站建筑网片钢筋网生产厂家
  • 万网网站建设方案书导购网站开发要多少钱
  • 做网站muse好还是DW好用wordpress %link