data-structures - 使用什么数据结构来进行 O(log n) 键与值查找?

标签 data-structures big-o key-value binary-search

有了一个排序的字典(哈希表、映射或任何键/值结构),您可以轻松地进行二分搜索来查找项目。如果我们假设键是唯一的但值可以重复,我们可以使用什么数据结构来进行键的 O(log n) 检索以及 O(log n) 查询来查找 values=something 在给定的数据中?

最佳答案

两棵二叉搜索树,一棵用于键,第二棵用于值,具有相互指针,将提供所需的功能。指针可以是从键到值的多对一,也可以是从值到键的一对多。

关于data-structures - 使用什么数据结构来进行 O(log n) 键与值查找?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29356948/

相关文章:

algorithm - 该算法的大 O 表示法是什么?

python - 正则表达式:如何匹配字符串末尾的键值对序列

c - 合并两个排序的链表

java - 为什么这个检查二叉树平衡的函数的时间复杂度是 O(n log n)?

string - 如何 split 绳索树?

java - 单个 while 循环的 Big-Oh 表示法,该循环覆盖具有两个迭代器变量的数组的两半

angular - 使用 *ngFor 和 [(ngModel)] 通过 Map 更改对象数组

Javascript:通过组合先前定义的键来设置对象上的键

python - 管理大点列表,最好的方法是什么?

PHP 索引数组的 Java 替代品