码迷,mamicode.com
首页 > 编程语言 > 详细

C语言数据结构——双循环链表的插入操作顺序

时间:2018-11-15 11:00:04      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:链表   bubuko   bsp   不能   结构   class   插入   color   原来   

双向链表与单链表的插入操作的区别

双向链表因为存在前驱指针和后继指针所以需要修改的指针多于单链表,但指针改动的顺序同样重要

单链表的插入

eg:在节点p的后面插入指针s

s->next=p->next;//首先要使要插入的指针指向p->next
p->next=s;//再将p的后继指向插入的s即可

注意! 顺序不能调换,否则在将p->next指向s后,原来由p->next指向的节点将会迷失在内存中,很难找到!

双向循环链表的插入

eg:将新的节点插入p节点的后面

技术分享图片

 

s->prior=p;
s->next=p->next;
p->next->perior=s;
p->next=s;

注意! 由于第二三行代码均需要使用p->next故要是先执行第四步将改变p->next而使得插入失败!

双向循环链表的插入可以记为先搞定要插入的节点的前驱和后继,再搞定后节点的前驱,最后解决前节点的后继

C语言数据结构——双循环链表的插入操作顺序

标签:链表   bubuko   bsp   不能   结构   class   插入   color   原来   

原文地址:https://www.cnblogs.com/studymakesmehappy/p/9962103.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!