双向链表的插入及删除图解
2017-04-07 14:53
246 查看
双向链表的插入
第一步:首先找到插入位置,节点 s 将插入到节点 p 之前
第二步:将节点 s 的前驱指向节点 p 的前驱,即 s->prior = p->prior;
第三步:将节点 p 的前驱的后继指向节点 s 即 p->prior->next = s;
第四步:将节点 s 的后继指向节点 p 即 s->next = p;
第五步:将节点 p 的前驱指向节点 s 即 p->prior = s;
双向链表的删除
第一步:找到即将被删除的节点 p
第二步:将 p 的前驱的后继指向 p 的后继,即 p->prior->next = p->next;
第三步:将 p 的后继的前驱指向 p 的前驱,即 p->next->prior = p->prior;
第四步:删除节点 p 即 delete p;
相关文章推荐
- 双向链表的插入及删除图解
- 实现双向链表删除一个节点P,在节点P后插入一个节点
- 数据结构 P36-37 算法实现 双向循环链表的插入与删除
- 双向链表插入删除
- 双向链表的创建、结点的插入、删除与打印
- (C语言版)链表(三)——实现双向链表创建、删除、插入、释放内存等简单操作
- 双向循环链表的建立,插入,删除(不带头结点)
- 双向链表的功能实现:初始化,插入,按位置插入,按位置删除,按值删除,遍历打印等
- 双向链表建立、插入和删除
- C语言实现双向链表删除节点、插入节点、双向输出等操作
- 笔试题 实现双向链表的插入和删除
- 双向循环链表的插入和删除
- 双向链表 删除节点 插入节点
- 双向链表的插入、删除、遍历
- (C++版)链表(三)——实现双向链表的创建、插入、删除等简单操作
- (C语言版)链表(四)——实现双向循环链表创建、插入、删除、释放内存等简单操作
- (C语言版)链表(四)——实现双向循环链表创建、插入、删除、释放内存等简单操作
- [原]C语言实现双向链表删除节点、插入节点、双向输出等操作
- 二级指针实现单链表的插入、删除及 linux内核源码双向链表之奇技