1. 前言

链表 [Linked List] 是一种常见的基础数据结构,是一种线性表。链表由一系列结点组成,每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。

2. 参考资料

维基百科

3. 特点

使用链表结构可以克服数组链表需要预先知道数据大小的缺点,链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理。但是链表失去了数组随机读取的优点,同时链表由于增加了结点的指针域,空间开销比较大。

  • 查找一个数,必须要从头开始找起

  • 添加数据,只需要改变添加位置前后的指针指向就可以

4. 链表的类型

4.1. 单向链表

链表中最简单的一种是单向链表,它包含两个域,一个信息域和一个指针域。这个链接指向列表中的下一个节点,而最后一个节点则指向一个空值。

4.2. 双向链表

每个节点有两个连接:一个指向前一个节点,(当此“连接”为第一个“连接”时,指向空值或者空列表);而另一个指向下一个节点

4.3. 循环链表

在一个 循环链表中, 首节点和末节点被连接在一起。循环链表可以被视为“无头无尾”。这种列表很利于节约数据存储缓存, 假定你在一个列表中有一个对象并且希望所有其他对象迭代在一个非特殊的排列下。

循环链表中第一个节点之前就是最后一个节点,反之亦然。

Copyright © yzx该文章修订时间: 2021-12-03 17:24:22

results matching ""

    No results matching ""