一尘不染

Java ArrayList的时间复杂度

java

ArrayListJava中的数组还是列表?什么是get操作的时间复杂度,是它O(n)还是O(1)


阅读 326

收藏
2020-09-08

共1个答案

一尘不染

一个ArrayList在Java是一种List由一个支持array

get(index)方法是恒定时间的O(1)操作。

直接从Java库获取ArrayList.get(index)以下代码:

public E get(int index) {
    RangeCheck(index);
    return (E) elementData[index];
}

基本上,它只是直接从后备数组中返回一个值。(RangeCheck(index))也是固定时间)

2020-09-08