我的问题类似于Data structure for partial multi-keys mapping?。
我有键值对,其中键由三个组件(字符串)组成。
我正在寻找一种能够有效地通过密钥执行搜索查询的数据结构,其中查询可以是完整的或部分地指定密钥(省略一个或多个组件)。例如:
(x, y, z)
(x, *, *)
(*, y, *)
etc.
密钥的未指定部分可以位于密钥的前面,中间或末尾。
我的当前实现(将所有可能的部分键映射到一组与此部分键匹配的值的哈希映射)在插入,删除和更新值时非常慢。
答案 0 :(得分:3)
我当前的实现(一个哈希映射,映射所有可能的部分 与此部分键匹配的列表键的键非常慢 插入,删除和更新值时。
如果您实际使用的是列表,那么这几乎肯定是问题,因为删除/更新/插入速度很慢也可能是一个问题,具体取决于您的操作方式。最好使用集合(无序)或平衡二叉搜索树(有序)。