List ADT有两种流行的实现方式。
1.ArrayList类提供了List ADT的一种可增长数组的实现。使用ArrayList的优点在于,对get和set的调用花费常数时间。其缺点是新项的插入和现有项的删除代价昂贵,除非变动是在ArrayList的末端是在ArrayList的末端运行。
2.LinkedList类则提供了List ADT的双链表实现。使用LinkedList的优点在于,新项的插入和现有项的删除均开销很小,这里假设变动项的位置是已知的。
解释下数组类型和双链表的区别
a.数组
b.双链表
import java.util.* ;
public class ListDemo01{
public static void main(String args[]){
List<Integer> li = new LinkedList<Integer>() ;
long startTime = System.currentTimeMillis() ;
for(int i=0;i<1000000;i++){
li.add(0,i) ;

本文探讨ArrayList和LinkedList两种List ADT实现的区别。ArrayList基于可增长的数组,get和set操作快速,但插入和删除效率低。LinkedList是双链表实现,插入和删除操作高效,但在获取元素时较慢。内容涉及数组和双链表的特性,并提到了使用iterator进行操作的性能问题。
最低0.47元/天 解锁文章

10万+

被折叠的 条评论
为什么被折叠?



