普贤教程 › 包参考
bitset 包
位向量 / 位集合
| 项 | 值 |
|---|---|
| 包名 | bitset |
| 版本 | 0.2.0 |
| 可用版本 | 0.1.0 / 0.2.0 |
| 入口 | bitset.px |
| 分类 | 数据结构 |
| 文件数 / 行数 | 1 / 170 |
安装与引入
bash
pxpkg init # 首次 pxpkg add bitset@0.2.0 pxpkg install
px
import bitset所属分类教程:数据结构
公开接口
| 函数 | 参数 |
|---|---|
bs_new | nbits |
bs_test | b, i |
bs_set | b, i |
bs_clear | b, i |
bs_flip | b, i |
bs_count | b |
bs_to_list | b |
其余 8 个 def(内部与辅助,可直接调用但不属稳定接口)
| 函数 | 参数 |
|---|---|
bs_and | a, b |
bs_or | a, b |
bs_xor | a, b |
bs_not | a |
bs_intersects | a, b |
bs_is_subset | a, b |
bs_from_list | nbits, indices |
bs_to_string | b |
包内说明(源码头注释)
text
============================================================
普贤生态库:registry/bitset —— 位向量 / 位集合
------------------------------------------------------------
纯函数库(无 IO、无状态,位集状态以 {"n": 位数, "d": bytes} 显式传递),
编译(px build)与解释(px run)双模式一致。
bs_new(nbits) → Ok({n, d}) | Err 新建 nbits 位(全 0)
bs_set(b, i) → Ok(b) | Err 置 1(越界 Err)
bs_clear(b, i) → Ok(b) | Err 置 0
bs_flip(b, i) → Ok(b) | Err 翻转
bs_test(b, i) → Ok(bool) | Err
bs_count(b) → int 置 1 位数(popcount,原生 bit_count)
bs_to_list(b) → [int] 置 1 的下标列表
位序:位 i → 字节 i//8 的第 i%8 位(LSB 优先)。
============================================================