List接口下有很多个集合,它们存储元素所采用的结构方式是不同的,这样就导致了这些集合有它们各片的特点,供给我们在不同的环境下使用。数据存储的常用结构有:堆栈、队列、数组、链表
1. 堆栈,采用该结构的集合,元素存取有以下特点
- 先进后出
- 栈的出口和入口都是栈的顶端位置
- 压栈:就是存元素,像压子弹一样压入进云
- 弹栈:就是取元素,把位于栈顶端的元素取出来
2. 队列,先进先出
- 先进先出,像管道一样,左边进去,右边出来
- 队列的入口 出口各占一侧
3. 数组
- 查找速度快,通过索引可以快速访问到指定位置的元素
- 增删元素慢。因为数组是定长的,要增加或删除,需要创建一个新数组,把原数组copy过来。
4.链表
- 多个节点之间,通过地址进行连接,像手拉手一样,上一个元素保存下一个元素的内存地址。
- 查找元素慢,想要找某个元素,需要通过连接的节点依次向后查找。
- 增删元素快:增加元素,只需修改连接下个元素的地址即可;删除元素,只需修改保存的地址即可。
- 每一个元素又称为链表中的一个节点