链表的重要性
- 链表是真正的动态数据结构。
- 链表是最简单的动态数据结构。
- 涉及到计算机领域中非常重要的概念:引用(或者指针)。
- 链表有非常清晰的递归结构,因此能更深入地理解递归。
- 链表能够组织更加复杂的数据结构,如哈希表、图等。
优点
链表是真正的动态,不需要像数组那样需要处理固定容量的问题。
缺点
链表与数组相比,它丧失了随机访问的能力。也就是说,它不能像数组那样,通过索引直接访问元素。
由于数组在内存中开辟的空间是连续的,因此可以通过偏移直接获取相应数据存储的内存地址。但是链表不一样,它是通过 next 属性将节点一个一个地连接起来,在计算机的底层,每一个节点它所在的内存位置是不同的,因此只能通过 next 一个一个地寻找节点。
数组和链表的对比
- 数组最好用于索引有语义的情况
- 数组最大的优点是支持快速查询
- 链表不适合用于索引有语义的情况
- 链表相较于数组,更加擅长插入操作和删除操作
