首页 > 编程知识 正文

链表的类型声明,手表表链类型

时间:2023-05-04 12:35:25 阅读:240708 作者:3092

1.单链表

所谓的单链表就是链表最基本的结构,链表通过指针将一组零散的内存块串联在一起,其中,我们把内存块称为链表的“节点”。为了所有的节点能串起来,每个链表的节点除了存储数据之外,还需要激励链表上的下一个节点的地址,如图所示,我们把这个记录下个节点的地址的指针叫做后继指针next,如果链表中某个节点为p,p的下一个节点为q,我们可以描述为:p->next=q
下面的图更加详细的描述了单链表的存储结构。

从我画的单链表的图中,你应该可以发现,其中有两个节点是比较特殊的,他们分别是第一个节点和最后一个节点,我们习惯性地把第一个节点叫做头结点,把最后一个节点叫做尾结点。其中,头节点用来记录链表的基地址,有了它,我们就可以遍历得到整个链表,而尾结点特殊的地方是:指针不是指向下一个节点,而是指向一个空地址NULL,表示是链表的最后一个节点。
与数组一样,链表也支持数据的查找、插入和删除操作。
我们知道,在进行数组的插入和删除操作时,为了保持内存数据的连续性,需要做大量的数据挪移。而在链表中插入或者删除一个数据,我们并不需要为了保存内存的连续性和搬移节点,以为链表的空间本来就不是连续的,所以在链表中插入和删除数据是非常快速的。
为了方便理解,我画了一张图,从图中我们可以看出,针对链表的插入和删除操作,我们只需要考虑相邻节点指针的改变。cahru

2.循环链表

循环链表是一种特殊的单链表,实际上,循环链表也很简单,它跟单链表唯一的区别就是尾结点。我们知道,单链表的尾结点指针指向空地址,表示这就是最后的节点了。而循环链表的尾结点指针是指向链表的头结点,从画的循环链表的图来看,它看起来像一个环一样的头尾相连,所以叫做循环链表,和单链表相比,循环链表的优点就是从链尾到链头比较方便。当要处理的数据具有环形结构特点时,就特别适合采用循环链表,循环链表的图如下所示:

3.双向链表

单向链表只有一个方向,节点只有一个后继指针next指向后面的节点。而双向链表,顾名思义,它支持两个方向,每个节点不止有一个后继指针next指向后面的节点,还有一个前驱指针prev指向前面的节点:

4.双向循环链表

了解了循环链表和双向链表,如果把这两种链表整合在一起就是一个双向循环链表。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。