LinkedList和ArrayList优缺点

LinkedList和ArrayList优缺点

数组与链表中查找与更新的操作效率

LinkedList与ArrayList都实现了List接口,但它们的数据结构有差异,各有其优缺点,主要表现在不同操作的效率。

ArrayList的优点在于,对get和set的调用花费常数时间。其缺点是新项的插入和现有项的删除代价极其昂贵(O(N^2)),除非变动是在ArrayList的末端进行。

LinkedList的优点在于,新项的插入和现有项的删除均开销很小(假设变动项位置已知)。其缺点是它不容易作索引,因此对get的调用是昂贵(O(N))的,除非调用非常接近表的端点。

因此,当不需要频繁更新List时,使用ArrayList效率高、空间开销小(数组数据密集),反之,使用LinkedList效率高。

posted @ 2021-04-13 16:22  getHeading  阅读(401)  评论(0)    收藏  举报