8个版本
0.2.5 | 2022年10月10日 |
---|---|
0.2.4 | 2022年8月30日 |
0.1.5 | 2021年8月23日 |
4 在 #稀疏数组
每月下载 23 次
18KB
324 行
XSparseSet
稀疏集是一种数据结构,具有快速迭代和从稀疏ID获取数据的能力
稀疏集
稀疏集包含2个数组,稀疏数组'S'和密集数组'D'。'S'和'D'数组必须满足2个规则
S[ID] ==索引
D[索引] = ID
这两个规则使我们能够快速从ID获取数据,并且我们可以密集地存储所有数据。
详细信息
由于我们需要存储数据和实体ID,XSparseSet有3个数组,"indices" "entities"和"data"。
- indices : 稀疏数组
- entities : 密集数组
- data : 密集数组
示例
let mut sparse_set = SparseSet::new();
sparse_set.add(4,'c');
sparse_set.add(7,'a');
assert_eq!(sparse_set.get(4),Some(&'c'));
assert_eq!(sparse_set.get(5),None);
lib.rs
:
XSparseSet
稀疏集是一种数据结构,可以通过分散的ID获取数据,并且对缓存友好