【算法板子】普通平衡树(洛谷P3369)
生活随笔
收集整理的這篇文章主要介紹了
【算法板子】普通平衡树(洛谷P3369)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
<tree>平衡樹
-
需要包含頭文件<ext/pb_ds/tree_policy.hpp>和<ext/pb_ds/assoc_container.hpp>
或者直接#include <bits/extc++.h>
-
創(chuàng)建下標(biāo)和數(shù)值正相關(guān)平衡樹的基本方法:(負(fù)相關(guān)只需要把less改成greater)
tree<double, null_type, less<double>, rb_tree_tag, tree_order_statistics_node_update> T;
//對于:
- tree<double, null_type, greater, rb_tree_tag, tree_order_statistics_node_update> T;
//這個東西是有一點長
//第一個參數(shù)是數(shù)據(jù)類型
//第二個要填null_type,低版本編譯器填null_mapped_type
//第三個填比較函數(shù) std::greater<> or std::less<> or cmp
//第四個填樹的類型,有rb_tree_tag紅黑樹和splay_tree_tag
//第五個是為了支持查詢第k大和排名的一個參數(shù)
//tree_order_statistics_node_update -
基本操作有
- 因為這種tree和set一樣不會保存相同的元素,所以在使用時我們可以加上i * 1e-6(其中i是輸入時的下標(biāo)or操作序,唯一就行)
總結(jié)
以上是生活随笔為你收集整理的【算法板子】普通平衡树(洛谷P3369)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 彻底关闭Windows Defender
- 下一篇: splay 模板 洛谷3369