数据结构复习之可并堆

大暴力!!!大暴力!!!

可并堆这名字听起来高端无比!!!竟然能实现堆的合并!!!

顾名思义这个东西就是用于合并堆的!!!how exciting!!!;

其实实现还是挺简单的。。。

下面附上merge代码

1   int merge(int x,int y)
2   {
3     if(!x||!y)return x+y;
4     if(v[x]<v[y])swap(x,y);
5     r[x]=merge(r[x],y);
6     fa[r[x]]=x;
7     swap(l[x],r[x]);
8     return x;
9   }

训练题目

Apio2012

棘手的操作

小伙子留给你的时间不多了,不能再当颓狗了

 

posted @ 2017-03-01 15:01  qt666  阅读(169)  评论(0编辑  收藏  举报