循环链表与双向链表
2017-07-10 19:31
183 查看
《大话数据结构》之循环链表和双向链表
与单链表区别,原来判断p->next是否为空,现在判断p->next不等于头结点则循环结束
不用头指针,使用指向终端节点的尾指针表示循环链表
将两个循环链表合并成一个:
双向链表是在单链表的每个结点中,再设置一个指向其前驱结点的指针域。
双向链表的插入:
双向链表删除:
与单链表区别,原来判断p->next是否为空,现在判断p->next不等于头结点则循环结束
不用头指针,使用指向终端节点的尾指针表示循环链表
将两个循环链表合并成一个:
p=rearA->next;//保存A头结点 rearA->next = rearB->next->next;//B表的第一个节点赋值给rearA->next q=rearB->next; rearB->next = p;//A头结点赋值给 rearB->next free(p)//释放B表头结点
双向链表是在单链表的每个结点中,再设置一个指向其前驱结点的指针域。
双向链表的插入:
//s为插入节点 s->prior = p; s->next = p->next; p->next = s; p->next->prior = s;
双向链表删除:
//p为删除节点 p->prior->next = p->next; p->next->prior = p->prior
相关文章推荐
- 循环链表及双向链表的c语言实现
- 线性表实现:顺序表、链表、循环链表、双向循环链表
- 数据结构学习笔记 --- 线性表 (双向链表、循环链表)
- 链表的基本操作(单链表、双向链表、循环链表)
- 数据结构学习笔记 --- 线性表 (双向链表、循环链表)
- 有两个双向循环链表A,B,知道其头指针为:pHeadA,pHeadB,请写一函数将两链表中data值相同的结点删除
- 数据结构教程 第九课 循环链表与双向链表
- 数据结构——链表(单链表、循环链表、双向链表、静态链表)
- 线性表->循环链表, 双向链表
- 数据结构学习笔记 --- 线性表 (双向链表、循环链表)
- 今天主要学习的是 链表,单链,循环链表和双向链表,总体感觉还可以,还是有点懵懵的,需要勤加练习。
- 《数据结构》 循环链表和双向链表常用操作代码集合
- 用内核链表提供的双向循环链表标准实现功能
- 【数据结构】C语言实现双向链表(带头尾指针,非循环链表)
- 【算法设计-链表】单链表与双向循环链表
- 数据结构—循环链表与双向链表
- 单链表的应用2(单向循环链表变双向循环链表)
- 数据结构学习笔记三 循环链表及双向链表
- 单链表,双向循环链表应用
- 数据结构之线性表(四)——循环链表和双向链表