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

精选聊城做网站的公司深圳市建设有限公司

精选聊城做网站的公司,深圳市建设有限公司,淘宝开网店怎么运营,百度最新版下载一、堆排序的思想 堆排序(Heapsort)是指利用堆积树#xff08;堆#xff09;这种数据结构所设计的一种排序算法#xff0c;它是选择排序的一种。它是通过堆#xff08;若不清楚什么是堆#xff0c;可以看我前面的文章#xff0c;有详细阐述#xff09;来进行选择数据堆这种数据结构所设计的一种排序算法它是选择排序的一种。它是通过堆若不清楚什么是堆可以看我前面的文章有详细阐述来进行选择数据通过向下调整算法从第一个非叶子结点开始在局部先创建出大堆或小堆然后父亲结点不断往上走直到整棵树都建成一个堆。 需要注意的是排升序要建大堆排降序建小堆。 然后不断交换根节点和最后一个节点的值交换完后节点的数目减1因为最后一个节点已经是它应该在的位置了不用再参与建堆再从根节点向下建堆除最后一个节点其它节点又会建成一个堆 。 然后重复红色括号中的过程堆排序就完成了。 二、堆排序的图解 下图以建大堆为例排一个升序序列 三、堆排序的实现 3.1向下调整算法的实现 实现堆排序最重要的就是实现向下调整算法。以下是向下调整算法的代码以及解释 //这里以建大堆为例 void AdjustDown(int* a, int n, int root) {int child root * 2 1;//找到根节点的左孩子while (child n)//判断左孩子是否出界{if (child 1 n a[child 1] a[child])//child 1 n判断右孩子是否出界//a[child 1] a[child]判断左右孩子的大小取左右孩子中大的那一个child;if (a[child] a[root])//入过孩子的值比父亲的值大就交换孩子和父亲的位置Swap(a[child], a[root]);else//如果孩子的值不比父亲的值大就证明大堆已经建好了因为此时父亲的左右子树都是大堆//直接break跳出循环。break;//没有break来到这里就顺着子树继续往下走root child;child root * 2 1;} } 3.2堆排序的实现 以下是堆排序的代码实现以及解释 void HeapSort(int* a, int n) {//向下调整建堆for (int i (n - 1 - 1) / 2; i 0; i--){//(n - 1 - 1) / 2找到第一个非叶子节点从第一个非叶子结点开始向下建堆AdjustDown(a, n, i);}//堆建好了int end n - 1;while (end 0){//假设是建大堆将下标为0的元素和下标为end的元素交换//最大的数就排到最后了也就相当于最后的那个数已经排好了不用再参与下面的向下建堆Swap(a[0], a[end]);AdjustDown(a, end, 0);//还没有排好的数向下建堆从0位置开始向下建堆end--;} } 四、总结 堆排序的时间复杂度为 O(N*logN) 向下建堆时间复杂度为O(N)排序时间复杂度为O(N*logN) 空间复杂度O(1) 稳定性不稳定。
http://www.yutouwan.com/news/268827/

相关文章:

  • 有口碑的徐州网站建设手机网址大全123客户端下载
  • 亦庄开发区建设局网站网站建设越秀
  • 简述无线网络优化的流程济南seo优化外包服务公司
  • 长沙营销型网站建设建设银行流水查询网站
  • 厨之梦进口食品网站谁做的网络营销心得体会800字
  • 南京那些公司做网站深圳网站公司推广平台
  • 网站如何做电脑和手机小程序的开发流程有哪几步
  • 哪个网站做网络推好花钱做网站注意什么
  • 做SEO公司多给网站138企业邮箱登录
  • 影楼网站设计做网站宁波有什么的网络公司
  • 怎么看网站域名搜索关键词热度
  • 寺庙网站模板维护网站是什么意思
  • 网站建设和电商区别公司网站建设需要收集什么信息
  • wap商城网站模板素材百度主页面
  • 如何获取网站域名证书专业微信网站建设
  • 注册公司网站开发建设营业项目网站建设企业有哪些
  • 做包装盒效果图的网站网站地图后台可以做吗
  • 湛江建站公司模板佛山厂家关键词网络推广
  • 一键搭建网站工具网站设计的公司报价
  • php网站开发项目创意网站推荐
  • 百度自建站句容建设质检站网站
  • 金华网站建设解决方案杭州移动网站建设
  • 做网站攻击清理空壳网站
  • 商丘河南网站建设如何制作旅游网站
  • 奉贤庄行网站建设手机wap网站 php
  • 做购物网站数据库分析可以用来制作网页的软件有哪些
  • 大气学校网站松江区做网站
  • 男女在一起做恶心的事网站建站之星怎么用
  • 免费做思维导图的网站企业网站建设定制
  • 国外营销型网站建设利用腾讯云建设网站