"SortedKeyStore" (数据结构)
"SortedKeyStore"
表示键和值的存储,按排序顺序保存键.
更多信息
- 经排序键存储(sorted key store)通常用于存储键和值.
- 经排序键存储中的键按排序顺序保存:
-
CreateDataStructure[ "SortedKeyStore"] 新建一个空 "SortedKeyStore" Typed[x,"SortedKeyStore"] 为 x 添加类型 "SortedKeyStore" - 对于 "SortedKeyStore" 类型的数据结构,可以使用以下运算:
-
ds["Copy"] 返回 ds 的副本 时间:O(n) ds["Elements"] 返回 ds 的键值对列表 时间:O(n) ds["EmptyQ"] 若 ds 没有项,则为 True 时间:O(1) ds["Insert",keyvalue] 将 key 添加到 ds 中并加上关联 value,如果添加值改变了 ds,则返回 True 时间:O(log n) ds["KeyDrop",key] 从 ds 中删除 key 及其值 时间:O(log n) ds["KeyDropAll"] 从 ds 中删除所有键及其值 时间:O(n) ds["KeyExistsQ",key] 若 key 存在于 ds 中,则为 True 时间:O(log n) ds["Keys"] 以排序列表的形式返回 ds 中的键值 时间:O(n) ds["KeyValueFold",fun,init] 将 fun 应用于 ds 的规则,从 init 开始,累计结果 时间:O(n) ds["KeyValueScan",fun] 将 fun 应用于 ds 的规则 时间:O(n) ds["Length"] 存储在 ds 中的键值对的数量 时间:O(1) ds["Lookup",key] 返回 ds 中用 key 储存的值;若未找到该键,则返回 Missing 对象 时间:O(log n) ds["Lookup",key,defFun] 返回 ds 中用 key 储存的值;若未找到该键,则返回 defFun[key] 时间:O(log n) ds["PeekFirst"] 返回 ds 中的第一个键值对 时间:O(1) ds["PeekLast"] 返回 ds 中最后一个键值对 时间:O(1) ds["PopFirst"] 移除 ds 中的第一个键值对并返回 时间:O(1) ds["PopLast"] 移除 ds 中的第一个键值对并返回 时间:O(1) ds["Values"] 将 ds 中的值返回为按相应键排序的列表 时间:O(n) ds["Visualization"] 返回 ds 的可视化形式 时间:O(n) - 还支持以下函数:
-
dsi===dsj 若 dsi 等于 dsj,则为 True FullForm[ds] ds 的完整形式 Information[ds] 关于 ds 的信息 InputForm[ds] ds 的输入形式 Normal[ds] 将 ds 转换为正则表达式 - 可以使用以下选项创建 "SortedKeyStore" 类型的数据结构:
-
"SortDirection" "Forward" 是否以正向或反向模式对键进行排序
范例
打开所有单元关闭所有单元基本范例 (1)
可用 CreateDataStructure 新建一个空 "SortedKeyStore":
范围 (3)
Information (1)
可使用 CreateDataStructure 新建一个 "SortedKeyStore":
Traversal (1)
可用 CreateDataStructure 新建 "SortedKeyStore" 并插入元素: