数组结构——链表
每日一问:为什么要有链表
解:因为数组使连续的内存空间,存储位置必须是连续的,而链表恰好解决了存储位置不连续的问题,优点是你可以写的很快,但是读取时还得沿着列表去找你所需求的,读取慢。
链表图: 单端链表
1 · → 2 ·
元素 next指针 元素 next指针
next指针:会自己找下一个元素连接起来
附:还有双端链表,就是不只是往一个方向去找元素了,而是两个方向都会去寻找
java链表常用操作
遍历可以使用list.toString()
1.创建链表//
LinkedList<类型> list = new LinkedList<>();
2.添加元素//
list.add(1);
list.add(2);
list.add(3);
输出:1,2,3
list.add(2,99);
输出:1,2,99,3
3.访问元素//
int element = list.get(2);
99
4.搜索元素//
int index = list.indexOf(99);
输出的是索引数:2
5.更新元素//
list.set(2,88);
1,2,88,3
6.删除元素//
list.remove(2);
1,2,3
7.长度//
int length = list.size();