数组与链表的优缺点
数组与链表的优缺点
原理
-
数组,在内存上给出了连续的空间.
-
链表,内存地址上可以是不连续的,
数组:
-
优点:使用方便 ,查询效率 比链表高,内存为一连续的区域
-
缺点:大小固定,不适合动态存储,不方便动态添加
链表:
- 优点:可动态添加删除 大小可变
- 缺点:只能通过顺次指针访问,查询效率低
链表和数组的本质差异
-
在访问方式上
数组可以随机访问其中的元素
链表则必须是顺序访问,不能随机访问 -
空间的使用上
链表可以随意扩大
数组则不能
详细介绍见原文: https://www.cnblogs.com/itdi/p/6590810.html
总结
如果要用到下标, 比如 list.insert(8,""), list.remove(4) , s = list.get(9) 等. 就用数组
如果一个集合,只是用来for循环一遍. 则用链表.