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

设计师免费素材网站推荐优惠券推广网站怎么做

设计师免费素材网站推荐,优惠券推广网站怎么做,网站文件名优化,电商网站建设方案目录 排序算法-堆积树排序法(HeapSort) 1、说明 2、算法分析 3、C代码 排序算法-堆积树排序法(HeapSort) 1、说明 堆积树排序法是选择排序法的改进版,可以减少在选择排序法中的比较次数,进而减少排序…

目录

排序算法-堆积树排序法(HeapSort)

1、说明

2、算法分析

3、C++代码 


排序算法-堆积树排序法(HeapSort)

1、说明

堆积树排序法是选择排序法的改进版,可以减少在选择排序法中的比较次数,进而减少排序时间。堆积排序法用到了二叉树的技巧,是利用堆积树来完成排序的。堆积树是一种特殊的二叉树,可分为最大堆积树和最小堆积树两种。

最大堆积树满足以下3个条件:

  1. 它是一棵完全二叉树。
  2. 所有节点的值都大于或等于它左右子节点的值。
  3. 树根是堆积树中最大的。

最小堆积树具备以下3个条件:

  1. 它是一棵完全二叉树。
  2. 所有节点的值都小于或等于它左右子节点的值。
  3. 树根是堆积树中最小的。

2、算法分析

  1. 在所有情况下,时间复杂度均为O(nlog_{2}n)
  2. 堆积排序法不是稳定排序法。
  3. 只需要一个额外的空间,空间复杂度为O(1)

3、C++代码 

#include<iostream>
#include<iomanip>
using namespace std;void Print(int* data, int size) {for (int i = 1; i < size; i++)cout << "[" << setw(2) << data[i] << "] ";cout << endl;
}void Swap(int& i, int& j) {int temp = i;i = j;j = temp;
}void ad_heap(int* data, int i, int size) {int j = 2 * i;int temp = data[i];int post = 0;while (j <= size && post == 0){if (j < size) {if (data[j] < data[j + 1])j++;}if (temp >= data[j])post = 1;else {data[j / 2] = data[j];j *= 2;}}data[j / 2] = temp;
}void Heap(int* data, int size) {for (int i = (size / 2); i > 0; i--)ad_heap(data, i, size - 1);for (int i = size - 2; i > 0; i--) {Swap(data[1], data[i + 1]);ad_heap(data, 1, i);}
}int main() {int data[9] = { 0,5,6,4,8,3,2,7,1 };int size = 9;cout << "原始数据:";Print(data, size);Heap(data, size);cout << "排序结果:";Print(data, size);return 0;
}

输出结果 

http://www.yayakq.cn/news/188294/

相关文章:

  • 长沙网络公司网站六枝特区企业网络推广的方法
  • 深圳自定义网站开发网站做js跳转
  • 深圳专业网站制作重庆建网站一般多少钱
  • 台州网站建设维护如何开发一个app软件
  • 学校网站 网站建设永久免费生成app网页
  • 南开区网站建设公司设计网站模板
  • 网页制作与网站建设从入门到精通 下载请问如何做网站
  • 1 高端品牌网站定制个人公司网站模板
  • 如何搭建一个网站平台手机在线
  • 好网站开发培训上海网站建设公司 珍岛
  • 花钱做网站需要所有权深圳市福田区住房和建设局官网
  • 沈阳制作网站企业会员卡管理系统设计
  • 做网站制作较好的公司做mv主题网站
  • 网站建设的公司怎么收费网站设计的公司蒙特
  • 网站数据库 备份渭南上上国风
  • 免费网站seo注册域名哪个网站好
  • 福州网站推广公司哪里做网站做得好
  • 山东金融行业网站开发dedecms插件
  • 数码网站名wordpress插件木马吗
  • 上海网站建设公司怎么分辨好坏商城网站建设要多少钱
  • wordpress手机网站怎么做宣城市建设监督管理局网站
  • 下载代码的网站wordpress 分类目录排序
  • 深圳制作网站制作公司哪家好系列图标设计网站推荐
  • 个人备案的网站销售商品网站开发公司+重庆
  • 网页设计网站设计网站页面要多少钱
  • 怎么建立织梦网站杭州网站建设品牌
  • 做网站的最大的挑战是什么WordPress自动发英文文章
  • 网站开发定制多少钱长春建站怎么做
  • 网站改版用新空间好吗做个网站怎么做
  • 烦恼可以做网站吗给别人做网站去掉版权