链表的认识
概念
链表是数据结构之一,其中的数据呈线性排列。
优点
添加和删除比较方便
缺点
查询时速度比较慢
特点
- 链表中的每个数据都有一个指针,用于指向下一个数据的内存地址
- 在链表中,数据一般都是分散存储于内存中的,无须存储在连续空间内
查找数据
由于数据是分散存储,查找数据时,只能从第一个数据开始,顺着指针的指向一一往下访问(顺序访问)。
添加数据
添加数据时,只需要改变添加位置前后的指针指向就可以。
例如,a > c > d > e
现在想要在a和c之间添加b元素,将a的指针指向b,将b的指针指向c即可。
删除数据
数据的删除也一样,只需改变指针的指向就可以。
例如:a > b > c > d
现在想要删除b元素,只需要将a元素的指针指向c即可。
循环链表
链表尾部使用指针,并将指针指向链表头部的数据,称之为循环链表
双向链表
链表里每个数据都有两个指针,并且他们分别指向前后数据,称之为双向链表。
优点
不仅可以从前往后,还可以从后往前遍历数据。
缺点
- 指针数的增加会导致存储空间需求增加
- 添加和删除数据时需要改变更多指针的指向
写在最后
- 文中使用的图片源自《我的第一本算法书》,如若侵权,请评论区留言,作者立即删除相关图片。
- 文中如有错误,欢迎在评论区指正,如果这篇文章帮到了你,欢迎点赞和关注😊
评论区