【发布时间】:2015-07-29 10:11:10
【问题描述】:
在 Java 集合框架中,很多实现都提到了它们在 Javadoc 中的性能。例如,HashSet 说:
假设散列函数将元素正确地分散在桶中,此类为基本操作(添加、删除、包含和大小)提供恒定的时间性能。迭代这个集合需要的时间与 HashSet 实例的大小(元素的数量)加上支持 HashMap 实例的“容量”(桶的数量)之和成正比。
ArrayList 说:
size、isEmpty、get、set、iterator 和 listIterator 操作在恒定时间内运行。
但 LinkedList 并没有说明它的性能。
我相信 LinkedList 的 pop 和 push 方法在恒定时间内运行,就像计算机科学中的链表一样。但我担心当我实现一个具有 LinkedList 参数的方法时可以假设。
LinkedList有什么理由不说它的性能吗?
【问题讨论】:
-
这是对类似问题的一个很好的回答:stackoverflow.com/questions/322715/…
-
LinkedList似乎没有提及其任何操作的性能。我不知道为什么——这不仅仅是pop和push。
标签: java collections linked-list javadoc