简介
pb_ds 全称为 Policy-Based Data Structures,里面定义了很多比 STL 更实用的数据结构,直接好处就是比如你要用一个 Treap 去维护某些数据,本来要写几十行的 Treap,现在只用几行代码就可以定义一个这样的结构出来。
使用 pb_ds 需要的头文件以及一些命名空间的申明:
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/hash_policy.hpp>
#define ext __gnu_pbds
using namespace ext;
或者可以直接:
#include <bits/extc++.h>
这样后面的数据结构需要的额外头文件都可以不用管了。
Hash表
有两种 hash表的写法:
ext::cc_hash_table<int,bool> h1; // 拉链法
ext::gp_hash_table<int

本文深入解析GNU C++库中的Policy-Based Data Structures (pb_ds)模块,介绍其提供的Hash表、Heap和Tree等高级数据结构。这些结构相较于STL更加灵活高效,尤其在Tree部分,红黑树的实现及其查询排名功能极为实用。
最低0.47元/天 解锁文章
2720

被折叠的 条评论
为什么被折叠?



