日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【模板】堆的结构

發(fā)布時間:2024/4/19 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【模板】堆的结构 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

這里是最小堆,最大堆也是類似的。

1.堆是一顆完全二叉樹。

性質(zhì):子節(jié)點的值一定不小于父節(jié)點的值。

堆的存儲用一個數(shù)組heap[n]即可。

由于完全二叉樹的性質(zhì),節(jié)點是按順序排列的,

i 節(jié)點的子節(jié)點編號為 2i+1 和 2i+2 。

同理 i 節(jié)點的父節(jié)點為 (i-1)/2 。

操作:堆有插入和刪除兩種操作,由于是二叉樹,兩種操作都是O(logn) 的 。

實現(xiàn)C++代碼:

#include <bits\stdc++.h> using namespace std; #define MAX_N 1000int heap[MAX_N],sz = 0;void push(int x){//新加入節(jié)點的編號 int i = sz++;while(i > 0){//父節(jié)點 int p = (i-1)/2;//如果新加節(jié)點小于它的父節(jié)點,則退出 if(heap[p] <= x) break;//把父節(jié)點放下來 heap[i] = heap[p];//把自己提上去 i = p;}//循環(huán)退出的時候已經(jīng)找到了該放的位置 // 把新節(jié)點加入進來 heap[i] = x; }int pop(){//有值才能pop assert(sz > 0);//要刪除的元素 int ret = heap[0];//記錄最后一個節(jié)點的值 int x = heap[--sz];//找到最后一個節(jié)點該待的位置,因為最后一個節(jié)點已經(jīng)被刪除了 int i = 0;//如果有子節(jié)點就循環(huán) while(i * 2 + 1 < sz){//找到較小的子節(jié)點 int a = i*2+1;int b = i*2+2;if(b < sz&&heap[b] < heap[a]) a = b;//如果較小的子節(jié)點大于最后一個節(jié)點的值則退出,因為已經(jīng)找到了最后一個節(jié)點該待的位置 if(heap[a] >= x) break;//把子節(jié)點提上來 heap[i] = heap[a]; //進入子節(jié)點 i = a; }//把最后一個節(jié)點放到它該待的位置 heap[i] = x;return ret; } int main(){}

總結(jié)

以上是生活随笔為你收集整理的【模板】堆的结构的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成人精品免费在线观看 | 欧性猛交ⅹxxx乱大交 | 插插插操操操 | 欧美午夜精品 | 精品96久久久久久中文字幕无 | av怡红院| 亚洲欧美另类日韩 | 欧美三个黑人玩3p | 亚洲色图40p | 欧美日韩黄色一级片 | 西西大胆午夜视频 | 91麻豆精品秘密入口 | 99久久婷婷国产精品综合 | 国产视频久久久久久 | 亚洲精品一区久久久久久 | 日韩欧美成人免费视频 | 另类视频在线观看 | 国产成人欧美一区二区三区的 | 最新一区二区三区 | 久久久久久久无码 | 久久调教| 久久精品国产亚洲 | 亚洲男人第一天堂 | 涩涩久久| 欧美精品久久久久久久 | 亚洲一区二区三区四区在线播放 | 99这里都是精品 | 97免费在线视频 | 国产精品久久久久久免费 | 欧美成人精品激情在线观看 | 国产精品腿扒开做爽爽爽挤奶网站 | 婷婷激情小说网 | 精品国自产拍在线观看 | 麻豆传媒观看 | 日韩三级黄色 | sm乳奴虐乳调教bdsm | 蜜桃av乱码一区二区三区 | 天天干天天操天天干 | 另类小说五月天 | 午夜香蕉网 | 久久久久久久久亚洲 | 看污片网站| 国产午夜福利100集发布 | 日本熟妇一区二区三区四区 | 性视频网 | 国产一级片在线播放 | 欧美.www | 无码精品国产一区二区三区免费 | 国产精品视频免费在线观看 | 国产精品第五页 | 欧美精品黑人猛交高潮 | 午夜黄色在线观看 | 搡老熟女国产 | 中文字幕第3页 | 欧美性猛交xxxx乱大交退制版 | 国产无遮挡免费观看视频网站 | 91一区二区在线观看 | 亚洲精品影院 | 精品国产网| 国产女主播一区二区 | 欧美黄色激情视频 | 日韩二区视频 | 国产视频精品一区二区三区 | 在线色| 国产一级片免费播放 | 日韩精品人妻一区二区三区免费 | 福利视频在线免费观看 | 国产精品一二三区视频 | 精品人妻av在线 | 亚州av在线播放 | 日韩欧美亚洲精品 | 欧美一级看片 | 日av中文字幕| 亚洲精品国产a | 香蕉大人久久国产成人av | 免费成人在线视频观看 | 97蜜桃网| 男女免费看| 国产永久av| 国产成人精品网站 | 亚洲天堂手机在线 | 最新在线观看av | 日本一二区视频 | 波多野结衣电影在线播放 | 日韩三级大片 | 午夜精品视频 | 爱爱91| 亚洲男女视频在线观看 | 欧美黑大粗 | 天天操天天舔 | 久久午夜无码鲁丝片 | 天堂在线观看免费视频 | 国产免费福利视频 | 在线观看视频中文字幕 | 91在线观看欧美日韩 | 欧美精品成人 | 一区二区三区四区五区在线视频 | 欧美另类天堂 | a视频|