0

我的CS基础正在滑落......

如何将大量字符串存储到hashmap/hashtable中,这样就可以得到O(1)的那个字符串的查找时间?...

没有hashmap/hashtable的java库吗?...它似乎将一个值存储到hashmap,你必须存储'key'&'value'。我假设 'value' 是我要存储的字符串,那么我必须为'key'做什么?

4

3 回答 3

1

Java具有内置支持;请看HashMap课。

如果您只想存储值,那么HashSet当键是值时,a 可能是更好的选择。

于 2013-03-29T00:51:37.253 回答
0

没有hashmap/hashtable的java库吗?

就在这里。事实上,Java SE 库中有 3 个类大致符合您的要求。(提示:HashSet、HashMap、Hashtable。)

您可以通过在线搜索 Javadocs 轻松找到它们。从这里开始 - http://docs.oracle.com/javase/7/docs/api/index.html

如果其中一个不符合您的要求,则可以使用专业的 3rd 方库……您可以使用 Google 找到它们。


如果你想成为一名成功的 Java 程序员,你需要学习一些“搜索赋”,这样你就可以自己找到这些类。

于 2013-03-29T00:56:17.363 回答
0

如果您需要按键查找,则使用 HashMap;如果您不这样做并且对索引访问感到满意,请使用 ArrayList。

有关 Big-O 的讨论,请参见以下内容:

于 2013-03-29T00:58:05.180 回答