5

我有一些数据将按排序顺序出现(首先是按排序顺序排列的整个键集,然后按随机顺序复制)。所以,我可以同时使用 LinkedHashMap 或 TreeMap 来保留排序(对吗?)。那么我的问题是,它们中哪个更快,哪个更节省空间?

4

1 回答 1

4

正如@EJP 所述,LinkedHashMap 的插入速度更快,因为它不必像 TreeMap 那样在插入时不必要地比较值。而且由于 LinkedHashMap 只需要一个指向上一个和下一个键的链接,而 TreeMap 需要一个指向父节点的链接和 1+ 个指向子节点的链接,我认为 TreeMap 也会消耗稍大的内存。

所以我的投票是给 LinkedHashMap。更少的内存,更少的时间,当然,更少的 CPU 。

于 2014-01-18T00:02:54.940 回答