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

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

/*小根堆*/class Heap{   private :      int   num[1008] ;      int   N ;   public :      void  push(int) ;      int   top() ;      void  pop() ;      void  up(int) ;      void  down(int) ;      int   empty_() ;            Heap() ;};Heap::Heap(){    N = 0 ;}int Heap::top(){    return num[1] ;}int Heap::empty_(){    return N < 1 ;}void Heap::down(int id){    int Lson = id<<1 ;    int Rson = id<<1|1 ;    int next = id ;    if(Lson <= N && num[Lson] < num[next])        next = Lson ;    if(Rson <= N && num[Rson] < num[next])        next = Rson ;    if(next != id){        swap(num[id],num[next]) ;        down(next) ;    }}void Heap::up(int id){    int father = id>>1 ;    if(father >=1 && num[id] < num[father]){        swap(num[id],num[father]) ;        up(father) ;    }}void Heap::pop(){    swap(num[N],num[1]) ;    N-- ;    down(1) ;}void Heap::push(int x){    num[++N] = x ;    up(N) ;}

 

转载于:https://www.cnblogs.com/liyangtianmen/p/3450831.html

你可能感兴趣的文章
HTTP 中间件相关
查看>>
android中R.JAVA文件编译时被删除
查看>>
UICollectionView Header 和Footer
查看>>
XMPP
查看>>
TODO:即将开发的第一个小程序
查看>>
Clone sqlite table with structure
查看>>
使用JavaMelody监控Java EE应用
查看>>
linux自动化建互信
查看>>
CENTOS5下采用LVS +KEEPALIVED实现负载均衡
查看>>
TOMCAT部署项目的方式
查看>>
android手电源码
查看>>
【Camera】手机相机自动对焦的3种方式及原理
查看>>
dhtmlxTree ie9兼容
查看>>
如何在Linux中配置DHCP服务器及DHCP中继服务
查看>>
HTML-图片转换为base64位上传
查看>>
深入Log4J源码之Layout
查看>>
利用Oracle的wm_concat函数把行转为列,合并分组后的列值
查看>>
IPv4—介质无关性
查看>>
第11章练习
查看>>
Logstash 基础入门
查看>>