多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當前位置:首頁 > 互聯(lián)網 > treap模版

treap模版

來源:程序員人生   發(fā)布時間:2014-09-14 09:30:39 閱讀次數(shù):2676次
#include <cstdio> #include <cstring> #include <cstdlib> using namespace std; struct Node { Node *ch[2]; int r; int v; int s; Node(int v): v(v) { ch[0] = ch[1] = NULL; r = rand(); s = 1; } bool operator < (const Node& rhs) const{ return r < rhs.r; } int cmp(int x) const{ if(x == v) return -1; return x < v ? 0 : 1; } void maintain(){ s = 1; if(ch[0] != NULL) s += ch[0]->s; if(ch[1] != NULL) s += ch[1]->s; } }; void rotate(Node* &o, int d){ Node* k = o->ch[d^1]; o->ch[d^1] = k->ch[d]; k->ch[d] = 0; o->maintain(); k->maintain(); o = k; } void insert(Node* &o, int x){ if(o == NULL){ o = new Node(x); } else{ int d = (x < o->v ? 0 : 1); insert(o->ch[d], x); if(o->ch[d] > o) rotate(o, d^1); } } void remove(Node* &o, int x){ int d= o->cmp(x); if(d == -1){ Node* u = o; if(o->ch[0] != NULL && o->ch[1] != NULL){ int d2 = o->ch[0] > o->ch[1] ? 1 : 0; rotate(o, d2); remove(o->ch[d2], x); } else{ if(o->ch[0] == NULL) o = o->ch[1]; else o = o->ch[0]; delete u; } } else remove(o->ch[d], x); if(o != NULL) o->maintain(); }

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 久久精品国产国语对白 | 欧美日韩国产亚洲一区二区三区 | 亚洲欧美日韩色 | 男女激情视频在线观看 | 成人国产激情福利久久精品 | 欧美xxxx免费 | 另类最猛性xxxxx | 日本一区二区免费看 | 老司机免费午夜精品视频 | 在线观看日本永久免费视频 | 欧美大陆日韩 | 性欧美18一19sex性高清播放 | 久久久久视频精品网 | 人与性www| 亚洲精品视频观看 | 岛国一区二区 | 欧美成人综合视频 | 亚州1区2区3区4区产品乱码2021 | 亚洲h视频在线 | 午夜在线播放视频在线观看视频 | 亚州中文字幕 | 欧美色综合天天综合高清网 | 亚洲精品一区二区三区在线看 | 亚洲一区二区三区四区五区六区 | 亚洲国产成人精品青青草原100 | 国产v片在线观看 | 亚洲精品国自产拍在线观看 | 欧美24video| 欧美一级aa天码毛片 | 视频一区精品 | www.日本xxxx| jizz亚洲大全 | 真实男女xx00动态视频120秒 | 亚州毛色毛片免费观看 | 欧美亚洲国产精品久久久 | 中文字幕乱码视频 | 亚洲国产片在线观看 | 久久精品国产99久久99久久久 | 亚洲在线成人 | 久久亚洲精品中文字幕三区 | 亚洲精品国产成人99久久 |