Java中的LinkedList调用size()的时间复杂度是多less?
正如标题所问,我不知道LinkedList类中的size()方法是否需要O(1)时间或O(n)时间。
这是O(1)。 你可以谷歌的源代码,你会来这样的:
来自http://www.docjar.com/html/api/java/util/LinkedList.java.html
我所看到的所有Collection类都将大小存储为一个variables,而不是遍历所有的东西来获取它。
O(1),你会发现你看到的源代码…
来自LinkedList:
private transient int size = 0;
…
/** * Returns the number of elements in this list. * * @return the number of elements in this list */ public int size() { return size; }