#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
using namespace std;int main()
{vector<int> v1;double dim[]={1,2,3,4,5,6,8,7};int cnt=sizeof(dim)/sizeof(double);v1.assign(dim,dim+cnt);  //初始化v1copy(v1.begin(),v1.end(),ostream_iterator<int>(cout,","));  //显示v1cout<<endl;make_heap(v1.begin(),v1.end());   //创建堆,v1成为了堆copy(v1.begin(),v1.end(),ostream_iterator<int>(cout,","));  //显示堆cout<<endl;pop_heap(v1.begin(),v1.end());  //将堆的最大值调整到最后copy(v1.begin(),v1.end(),ostream_iterator<int>(cout,","));  //显示堆cout<<endl;v1.pop_back();  //弹出v1中最后的元素(即堆中的最大值)copy(v1.begin(),v1.end(),ostream_iterator<int>(cout,","));  //显示堆cout<<endl;v1.push_back(11);  //插入元素push_heap(v1.begin(),v1.end());  //改变插入元素的位置,使其符合堆的定义copy(v1.begin(),v1.end(),ostream_iterator<int>(cout,","));  //显示堆cout<<endl;sort_heap(v1.begin(),v1.end());   //对堆中元素进行排序,结束后v1就不再是堆了copy(v1.begin(),v1.end(),ostream_iterator<int>(cout,","));  //显示,vector已经不是堆了cout<<endl;return 0;
}

C++ STL 堆(heap)的初始化及其正确使用相关推荐

  1. L2-012. 关于堆的判断(STL中heap)

    L2-012. 关于堆的判断 将一系列给定数字顺序插入一个初始为空的小顶堆H[].随后判断一系列相关命题是否为真.命题分下列几种: "x is the root":x是根结点: & ...

  2. STL堆算法性能分析与优化方法(GCC4.4.2 stl_heap.h源代码分析与改进方案)

    堆是常用的数据结构,经常用于实现优先队列中,huffman编码中的就用到了优先队列. 本质上就是用数组实现的完全二叉树保证父节点的关键码都大于或者等于其子节点的关键码(最大堆,反过来是最小堆),下图是 ...

  3. (深入理解计算机系统) bss段,data段、text段、堆(heap)和栈(stack)(C/C++存储类型总结)(内存管理)

    文章目录 bss段 data段 text段 堆(heap) 栈(stack) 一个程序本质上都是由 bss段.data段.text段三个组成的. 存储类型总结 bss段 bss段(bss segmen ...

  4. Java里的堆(heap)栈(stack)和方法区(method)

    http://imiduo.iteye.com/blog/616310 Java里的堆(heap)栈(stack)和方法区(method)  <一> 基础数据类型直接在栈空间分配, 方法的 ...

  5. java中堆栈(stack)和堆(heap)

    http://www.ej38.com/showinfo/java-172156.html 堆栈是一种先进后出的数据结构,只能在一端进行输入或输出数据的操作  Stack类在java.util包中 向 ...

  6. bss段,data段、text段、堆heap和栈stack

    bss段,data段.text段.堆heap和栈stack bss段 data段 text段 堆(heap) 栈(stack) 例子 在C的学习中,你总避免不了对各类数据的存储区域学习归纳总结,简单的 ...

  7. c语言建立小根堆的算法,小根堆(Heap)的详细实现

    堆的介绍 Heap是一种数据结构具有以下的特点: 1)完全二叉树 2)heap中存储的值是偏序 Min-heap: 父节点的值小于或等于子节点的值 Max-heap: 父节点的值大于或等于子节点的值 ...

  8. 数据结构之堆(Heap)及其用途

    本文采用图文码结合的方式介绍堆来实现优先队列 什么是优先队列? 队列是一种先进先出(FIFO)的数据结构.虽然,优先队列中含有队列两个字,但是,他一点也不像队列了.个人感觉,应该叫他优先群.怎么说那, ...

  9. 数据结构--堆(Heap)

    堆(Heap) 本文主要介绍以下内容: Heap的实现 HeapSort(堆排序) 完善各种堆的函数接口 TopK经典问题 堆就是一棵完全二叉树.因为它的某些性质,我们可以用数组存储. 堆的性质 1 ...

最新文章

  1. Python的深浅拷贝讲解!
  2. 微信小程序惩治“老赖” 河北高院“老赖地图”上线
  3. boost::irange相关的测试程序
  4. leetcode 795. Number of Subarrays with Bounded Maximum | 795. 区间子数组个数(Java)
  5. java数组排序源码_Java 数组工具类排序,最大值最小值等
  6. 最小总代价(洛谷-U17433)
  7. 基于MSFM算法与最速下降法的射线追踪技术
  8. php 面向对象进阶,PHP面向对象进阶设计模式:解释器模式使用实例
  9. “NTLDR is missing”和”NTLDR is compressed”的解决办法
  10. 语音对话平台海尔五代智能电视落地
  11. 【2021团体程序设计天梯赛】L1部分(PTA,L1-073到L1-080)题解代码
  12. android官方原生主题,原生Android可以更换系统主题吗?
  13. 这些程序员常用快捷键你了解吗?让你的双手在键盘上起舞
  14. 我的前端成长之路-写给在迷茫路上的人
  15. DDD—快速理解聚合根、实体、值对象的区别和联系
  16. 2020个人成长计划
  17. SIFT算法基础数学
  18. html5+css3响应式布局应该考虑到的屏幕的尺寸
  19. wangeditor设置字体_自定义颜色、字体、字号
  20. 探究音节bo、po、 mo、 fo韵母的实际发音

热门文章

  1. 计算机用户可用内存容量,基于 Windows 7 的计算机的可用内存可能低于安装内存...
  2. mysql拒绝远程连接_解决Mysql数据库拒绝远程连接和忘记密码的问题
  3. qq纯黑主题怎么设置_qq背景变黑色,怎么调过来
  4. python中response对象的属性_关于python:AttributeError:’HTTPResponse’对象没有属性’split’...
  5. mysql bin log 255_解析MYSQL BINLOG 二进制格式(4)--TABLE_MAP_EVENT
  6. Leetcode445 两数相加||(单链表)
  7. 【python笔记】选择结构:if语句详解
  8. Flash Media Live Encoder 使用帮助
  9. Struts2 + Spring + Hibernate 通用 Service 和 DAO
  10. uuid.randomuuid()回重复么_【编译器玄学研究报告】第三期——“O0” 就能逃出优化的魔爪么?...