LinkedList底层结构和源码

LinkedList底层结构和源码

  1. LinkedList的全面说明

  2. LinkedList底层实现了双向链表和双端队列特点

  3. 可以添加任意元素(元素可以重复,包括null)

  4. 线程不安全,没有实现同步

LinkedList的底层操作机制

  1. LinkedList底层维护了一个双向链表
  2. LinkedList中维护了两个属性first和last分别指向首节点和尾节点
  3. 每个节点(Node对象),里面又维护了prev、next、item三个属性,其中通过prev指向前一个,通过next指向后一个节点,最终实现了双向链表
  4. 所以LinkedList的元素的添加和删除,不是通过数组完成的,相对效率较高
  5. 模拟一个简单的双向链表

LinkedList增删改查底层机制

LinkedList.add()

LinkedList.remove()

LinkedList.set()

底层结构 增删的效率 改查的效率
ArrayList 可变数组 较低,数组扩容 较高
LinkedList 双向链表 较高,通过链表追加 较低

如何选择Arraylist和linkedList:

  • 如果我们改查多,选择Arraylist
  • 如果我们增删多选择LinkedList
posted @     阅读(12)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示