Array与List(数组和链表)的区别及其优缺点

Array与List(数组和链表)的区别及其优缺点

数组优点

  1. 元素存储时在物理上(内存)是连续的。
  2. 由于数组连续,可以通过下标进行直接访问数据。
  3. 查找效率为O(1)。

数组缺点

  1. 数据插入和删除时效率低下,该数据后面的元素都需要后移或者前移。
  2. 数组需要预留空间,可能会造成内存浪费。
  3. 要定义数组首先要有一段足够长的连续空间
  4. 并且数组大小是固定的,不支持动态的扩展,要是空间不足则需要重新开辟更大的数组。

链表优点

  1. 链表的元素在物理(内存)上不连续,在逻辑上连续(是通过指针联系在一起)的。
  2. 链表的插入和删除操作非常方便,改变指针即可。
  3. 不需要连续的内存空间,内存利用率高,而且不需要指定链表的大小。

链表缺点

  1. 不支持随机查找,必须要从第一个开始遍历,查找效率低。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿是小贺

谢谢老板的厚爱,感谢!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值