【数据结构】链表的概念以及分类 |
您所在的位置:网站首页 › 顺序表的定义和特点 › 【数据结构】链表的概念以及分类 |
在上一篇文章中,写到了顺序表。我们知道顺序表和链表都属于线性表。既然都是存储数据,干啊费那么大劲整这么多,所以它们俩肯定有各自的优点和缺点。
优点 缺点 顺序表 1.支持随机访问1.增容时成倍增长,有空间浪费 2.中间或者头部插入数据时效率不高 O(N) 链表1.用多少开多少,直接链上去,没有空间浪费 2.头尾插入效率高 O(1) 1.不支持随机访问 链表的概念
链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。如下图所示,在数据结构中,a1里面的指针存储着a2的地址,这样一个链接一个,就形成了链表。 在实际中,链表有许多形式,不止是上图中简简单单的样子。以下情况组合起来就有八种形式的链表:
下面介绍一下它们各自的结构,通过图可以理解得更深刻 不带头单链表![]() 虽然有很多的链表结构,但其实,我们最常用的就是两种结构:
无头单向非循环链表:结构简单,一般不会单独用来存数据。实际中更多是作为其他数据结构的子结构,如哈希桶、图的邻接表等等。另外这种结构在笔试面试中出现很多。带头双向循环链表:结构最复杂,一股用在单独存储数据。 实际中使用的链表数据结构,都是带头双向循环链表。另外这个结构虽然结构复杂,但是使用代码实现以后会发现结构会带来很多优势,实现反而简单了,后面我们代码实现了就知道了。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |