|
|
1
15
我建议您创建自己的数据结构来保存信息。在该类中,可以有两个存储相关信息的哈希映射。然后编写自己的方法来插入和删除用户。 这样,您可以控制插入/删除操作,同时可以单独查询每个属性。 |
|
|
2
9
下面的示例需要51微秒来扫描1000个用户。扫描10000个用户需要557微秒。
|
|
|
3
6
最简单的解决方案是使用Commons集合 MultiKeyMap …也检查这个线程 genericized-commons-collection |
|
|
4
5
看起来您可以使用双向地图之类的东西来实现类似的功能。退房 http://google-collections.googlecode.com/svn/trunk/javadoc/index.html?com/google/common/collect/BiMap.html
|
|
|
5
4
这对于你的需求来说可能有些过分,但我不知道你的需求有多复杂,对速度有多敏感,所以我会把它扔出去。。。 您是否考虑过使用内存(甚至基于本地磁盘,如SQLite)数据库来处理您的数据。这样做将允许您以一种方式存储数据,从而在搜索/索引数据时获得更大的能力,而无需编写自己的代码。 |
|
|
6
4
只需将用户放在ArrayList中,仔细查看,直到找到所需的用户。给每个用户一组兴趣。一旦你得到了足够多的用户,这需要很长的时间,对他们进行排序。 一旦时间太长,就看看利益分配。如果不同的文件数量较少,请将它们存储在位图中。如果您有一组有限的兴趣组合,请分别存储它们并为用户提供其中之一。
[嗯,这件事投了反对票]。看看这个问题:在这段代码像数据库一样慢之前,您需要大量的用户。(在当前硬件上,至少有几十万) |
|
|
7
3
当您删除一个用户时,您可以获得他所有的兴趣,并从兴趣HashMap列表中删除用户名。 当兴趣HashMap列表为空时,可以从HashMap中删除兴趣。 当两个或更多用户有相同兴趣时,请小心。只有一个用户被删除时,您不能删除兴趣。 缺点是,你会有多余的信息。 |
|
|
8
2
您可以使用2个哈希映射。但只搜索槽偏好可能会很复杂。
|
|
|
lagivan · 如何使用map参数测试XQuery函数 12 年前 |
|
|
sagar · 我们可以在其他映射中使用嵌套映射作为键吗? 12 年前 |
|
|
user2906420 · 创建传单自定义复选框控件 12 年前 |
|
|
Ali-Alrabi · 要根据对象键对地图进行排序 12 年前 |
|
|
SimplGy · javascript中按对象引用哈希 12 年前 |
|
|
city · 如何在C++映射中提取具有相同前缀的记录? 12 年前 |
|
|
alvas · 使用带有附加参数的map-python 12 年前 |
|
|
Bapho · ArrayList还是Map?还有关于如何存放孩子的帮助 12 年前 |