• ArrayList与LinkedList的区别


    一、线程安全性:ArrayList和LinkedList都是不同步的,也就是不保证线程安全

    二、底层数据结构:Arraylist 底层使⽤的是 Object 数组; LinkedList底层使⽤的是双向链表 数据结构

    三、插⼊和删除是否受元素位置的影响:① ArrayList 采⽤数组存储,所以插⼊和删除元素的时间复杂度受元素位置的影响。②LinkedList 采⽤链表存储,插⼊,删除元素时间复杂度不受元素位置的影响

    四、是否⽀持快速随机访问:LinkedList 不⽀持⾼效的随机元素访问,⽽ ArrayList ⽀持。快速随机访问就是通过元素的序号快速获取元素对象(对应于 get(int index) ⽅法)。

    五、内存空间占⽤: ArrayList的空间浪费主要体现在list列表的结尾会预留⼀定的容量空间,⽽LinkedList的空间花费则体现在它的每⼀个元素都需要消耗⽐ArrayList更多的空间(因为要存放直接后继和直接前驱以及数据)

  • 相关阅读:
    [APIO2014]序列分割
    [HNOI2014]世界树
    [THUWC2017]随机二分图
    快乐游戏鸡
    [SHOI2014]三叉神经树
    带花树学习笔记
    最小树形图——朱刘算法学习笔记
    【WC2018】即时战略
    [HNOI2015]接水果
    [HAOI2018]染色
  • 原文地址:https://www.cnblogs.com/zhukf/p/13713533.html
Copyright © 2020-2023  润新知