我关心的是,我正在开发一个应用程序,在该应用程序中,我只需要验证来自散列表的数据。我有8个哈希表,我从其中获取数据并进行验证。所有8个哈希表都具有相同的结构。我的问题是,如果我将数据放在8个哈希表中,还是在一个哈希表中更改它会更有效率?每个哈希表大约有100个对象。
提前谢谢。
你的,极客
发布于 2012-09-11 11:12:10
我同意在这种情况下,大小是如此之小,以至于微不足道。
也就是说,使用单个哈希表;否则,您必须进行8次检查才能找到某些内容,并且有8个哈希表结构的开销(根据定义,这些结构具有用于性能良好的槽的开销)。
如果您正在使用基元类型(或者甚至只是映射中键的基元类型),我强烈建议使用trove高性能集合库(GNU Trove)。它们是为高性能计算而编写的,在android这样的环境中可以节省宝贵的内存和计算周期。
它们不是完全的drop-in替代品,但具有类似的功能……例如
TLongObjectHashMap<String> myMap; // a map from primitive long to strings
myMap = new TLongObjectHashMap<String>();
myMap.put(4L, "Hello world"); // no boxing, so much less memory overhead, etc.https://stackoverflow.com/questions/12362005
复制相似问题