java - 用于搜索字符串三元组的最有效的 Java 数据结构

标签 java search

假设我有一个很大的字符串三元组列表(大约 10,000 个条目):

car    noun    yes
dog    noun    no
effect noun    yes
effect verb    no

假设我看到一个字符串 double - 例如,(effect, verb) - 我需要快速查看列表以查看该对是否出现,如果出现,它的值是 yes 还是 no。 (对于此示例,double 确实出现并且值为“no”。)

Java 中存储列表的最佳数据结构和执行搜索的最有效方法是什么?我正在运行成千上万的此类搜索,因此速度至关重要。

谢谢!

最佳答案

您可以考虑使用 HashMap<YourDouble, String> .搜索将是 O(1)。

您可以创建一个对象 YourDouble 来保存前两个值,或者将一个附加到另一个 - 如果值仍然是唯一的 - 并使用 HashMap<String, String> .

关于java - 用于搜索字符串三元组的最有效的 Java 数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7954106/

相关文章:

Java:软件测试员的面试问题?

java - 为什么在 java 中带有监听端口的 TCP/IP 服务器不工作

python - 如何使用 youtube 在 channel 中搜索 youtube 视频

mysql全文搜索搜索简单的单词,如 "part a"

mysql - 根据类似于 mysql 的标签选择相关标题

algorithm - 搜索多个字符串

java - 我如何在 Java 中管理工作时间?

java - 如果条件为真,则 else 正在执行

algorithm - 从数组中提取前 N 个唯一整数

java - Android Studio : Save URLS from a URL to an array