双向链表和双向循环链表

寒塘渡鹤影... 2019-11-12 08:58:58
双向链表和双向循环链表和单向链表相比,多了一个前驱结点。如果他为空,那么next和prior都指向自己。而对于双循环链表,只需要最后一个元素的next指向head->next,head->next的prior指向最后一个节点即可。 插入操作 新节点s插入链表,s->next给p结点,s->prior给p->prior,然后,p->prior->next指向s,p->prior再指向s。顺序需要注意 s->next = p; s->prior = p->prior; p->prior->next = s; p->prior = s; 删除操作 删除结点p。p->next->prior 指向 p->prior,p->prior->next 指向 p->next 。最后将p结点delete。 p->prior->next = p->next; p->next->prior = p->prior; delete p;
...全文
14 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧