Java笔记之ArrayList与LinkList区别与联系

一、数据结构的区别

    ArrayList数据结构是一个数组结构,LinkedList数据结构是一个双向循环链表结构。

二、增删改查的区别

    ArrayList比LinkedList的查询速度会更加快,ArrayList的底层采用随机访问(Randomaccess)策略根据下标查找元素,而LinkedList不支持随机访问,采用的是逐一查找方法。LinkedList的增、删只需要改变node指向,ArrayList增、删则会对整个数组进行重新排列,故LinkedList的增、删效率优于ArrayList。

ArrayList & LinkedList添加区别

三、内存的区别

    LinkedList比ArrayList更加占内存,LinkedList的节点除存储数据外还存储了一个指向前一个元素和一个指向后一个元素的两个引用。

四、时间复杂度的区别

    ArrayList根据数组下标进行随机查找时间复杂度是O(1),LinkedList依靠地址指针和后一个元素进行查找,故时间复杂度为O(n)。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容