7 个版本 (重大变更)
0.16.2 | 2024年5月29日 |
---|---|
0.15.4 | 2024年5月16日 |
0.5.1 | 2024年5月6日 |
0.5.0 | 2024年4月29日 |
0.1.0 | 2023年11月28日 |
在 数据结构 中排名第 818
每月下载量 301 次
在 4 个 仓库中使用(直接使用 2 个)
31KB
898 行
运行长度编码库。
有许多可合并的类型。通过合并它们,我们可以得到数据的一个更紧凑的表示。例如,在许多情况下,[0..5, 5..10]
可以合并为 0..10
。
RleVec
RleVec 是一个可以使用运行长度编码进行压缩的向量。
一个 T 值可以与其相邻的值合并。当我们推送新元素时,新值可以与数组中的最后一个元素合并。每个值都有一个长度,因此有两种类型的索引
- (合并) 它指的是合并元素的索引。
- (原子) 实质元素的索引。它指的是原子元素的索引。
默认情况下,我们在 RleVec 中使用原子索引。
- len() 返回数组中原子元素的数量。
- get(index) 返回索引处的原子元素。
- slice(from, to) 返回从索引 from 到索引 to 的原子元素切片。
依赖项
~0.9–1.4MB
~31K SLoC