px普贤教程PuXian
普贤教程 › 包参考

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_newnbits
bs_testb, i
bs_setb, i
bs_clearb, i
bs_flipb, i
bs_countb
bs_to_listb
其余 8 个 def(内部与辅助,可直接调用但不属稳定接口)
函数参数
bs_anda, b
bs_ora, b
bs_xora, b
bs_nota
bs_intersectsa, b
bs_is_subseta, b
bs_from_listnbits, indices
bs_to_stringb

包内说明(源码头注释)

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 优先)。
============================================================