摘要: 【题意】给定n个岛屿和排名,q次操作,连接两个岛屿或查询岛屿所在连通块第k小。 【算法】平衡树(treap)||线段树合并 对于每个连通块维护排名树,启发式合并(将size较小的树一一拆出来加入另一棵树)。 复杂度O(n log2n)。 #include<cstdio> #include<cstri 阅读全文
posted @ 2017-11-27 21:01 ONION_CYC 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 【旋转】 平衡树中的旋转是指在不改变中序遍历的前提下改变树的形态的方式。(中序遍历=排名顺序) 右旋将当前点的左节点旋上来,左旋反之。(图侵删) 原根k,新根o。 1.把k的左节点o解放出来并更新为o的右节点。 2.解放出来的o成为新根,其右孩子赋为k。 【Treap】树堆 功能:维护支持单点插入和 阅读全文
posted @ 2017-11-27 13:51 ONION_CYC 阅读(893) 评论(0) 推荐(1) 编辑