博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
堆排序
阅读量:6709 次
发布时间:2019-06-25

本文共 1452 字,大约阅读时间需要 4 分钟。

1 #include
2 using namespace std; 3 int heap[101]; 4 int heap_size; 5 void put(int d) //heap[1]为堆顶 插入 6 { 7 int now, next; 8 heap[++heap_size] = d; 9 now = heap_size;10 while(now > 1)11 {12 next = now/2;// 父节点 13 if(heap[now] >= heap[next]) 14 break;15 swap(heap[now], heap[next]);16 now = next;17 }18 }19 int get() //heap[1]为堆顶 获取 20 {21 int now=1, next, res= heap[1];22 heap[1] = heap[heap_size--];//取出末尾元素 23 while(now * 2 <= heap_size)24 {25 next = now * 2;// next 左孩子 26 if (next < heap_size && heap[next + 1] < heap[next])27 next++;28 if (heap[now] <= heap[next]) 29 break;30 swap(heap[now], heap[next]);31 now = next;32 }33 return res;34 }35 36 int main()37 {38 int n;39 cin>>n;40 for(int i=1;i<=n;i++)41 {42 int dr;43 cin>>dr;44 put(dr);45 }46 for(int i=1;i<=n;i++)47 {48 cout<
<

 stl

1 #include
2 #include
3 #include
4 using namespace std; 5 int a[10000001]; 6 int main() 7 { 8 int n; 9 cin>>n;10 for(int i=1;i<=n;i++)11 {12 //cin>>a[i];13 scanf("%d",&a[i]);14 }15 make_heap(a+1,a+n+1);16 sort_heap(a+1,a+n+1);17 for(int i=1;i<=n;i++)18 {19 //cout<
<

 

转载地址:http://fsalo.baihongyu.com/

你可能感兴趣的文章
万能的小苏打,知道的人太少了,赶紧收藏
查看>>
从MWC 2017看懂英特尔5G朋友圈
查看>>
Facebook 的移动端 A/B 测试框架
查看>>
《交互式程序设计 第2版》一2.3.4 运算符
查看>>
CYQ.Data V5 分布式缓存Redis应用开发及实现算法原理介绍
查看>>
论模式在领域驱动设计中的重要性
查看>>
一个创业公司的API网关落地实践
查看>>
国内需求疲弱 铅酸蓄电池新消费税将铅价承压
查看>>
Qt之网络编程
查看>>
《Adobe Acrobat X中文版经典教程》—第2章2.1节打开PDF文件
查看>>
FSF 活动人士呼吁就 DRM 致电 WWW 之父
查看>>
《UNIX环境高级编程(第3版)》——2.8 基本系统数据类型
查看>>
mysql导入报错MySQL server has gone away解决
查看>>
《CCNP ROUTE 300-101学习指南》——2.2节构建EIGRP拓扑表
查看>>
《为自己工作——世界顶级设计师成功法则》目录—导读
查看>>
Libreboot 项目向开源社区示好和致歉
查看>>
《CMYK 2.0——设计师色彩管理手册》—第1章1.3节副作用
查看>>
java.util.concurrent.locks.LockSupport
查看>>
红帽加入 Node.js 基金会白金会员
查看>>
《OpenGL编程指南》一2.7 独立的着色器对象
查看>>