关于ArrayList和LinkedList详细区别,在链表的排序这些最好统统说一下,今天面试问了下这个,居然面试官给我说出了很大一推。我想详细的了解一下这两个的区别

解决方案 »

  1.   

    看看JDK的帮助吧
    ArrayList
    LinkedList
      

  2.   

    ArrayList
    1、它是用数组结构来实现的;
    2、随机访问效率高;
    3、不适合经常作插入删除操作;
    4、对容量不确定的效率较低,可能经常要对元素进行复制;
    5、可以包含null元素;
    LinkedList
    1、它是用链表结构来实现的;
    2、随机访问效率低;
    3、适合作插入删除操作;
    4、可以很好解决容量的不确定性;
    5、可以包含null元素;
    6、适合用来作为栈数据结构
    看下面补兖。
      

  3.   

    说白了,就是数据结构中的双向链表(所以如果要用ListIterator,最好使用LinkedList)与顺序表.最好看看源码才有更深体会.
      

  4.   

    别的说不上来,但一个数组结构,一个链表结构应该明白吧,数据结构中重点讲过这两种,数组插入删除慢,因为要移动所有插入或删除位置的后面的元素,但查找快,因为有数组下标,直接访问,链表的话相反,查找得从第一个或最后一个开始,一个一个通过next来查找,但插入删除快,因为它只影响到插入或删除位置的前后2个元素(当然,单向链表的话如果是头结点或尾结点也可能只影响一个元素)