Data|双向链表插入结点分析和总结
主要是针对通用的插入结点时所需要注意的事项,对于深入了解具有指导意义。
可以通过画图来分析,会有种豁然开朗的感觉。
typedef struct DuLNode
{
ElemType data;
DuLNode *prior,*next;
}DuLNode,*DuLinkList;
1. 如果在链表中插入时仅仅指出直接前驱结点p,钩链时必须注意先后次序是: “先右后左”。部分语句组如下:
s->next = p->next;
p->next->prior = s;
p->next = s;
s->prior= p;
/*钩链次序非常重要*/
【Data|双向链表插入结点分析和总结】2. 如果在链表中插入时仅仅指出直接后继结点p,钩链时必须注意先后次序是: “先左后右”。部分语句组如下:
s->prior = p->prior;
p->prior->next = s;
s->next = p;
p->prior = s;
/*钩链次序非常重要*/
3. 如果插入时同时指出直接前驱结点p和直接后继结点q,钩链时无须注意先后次序。部分语句组如下:
p->next = s;
s->next = q;
s->prior = p;
q->prior = s;
推荐阅读
- leetcode|leetcode 92. 反转链表 II
- 数据库总结语句
- vue组件中为何data必须是一个函数()
- R|R for data Science(六)(readr 进行数据导入)
- 运行报错Cannot|运行报错Cannot find module '@babel/compat-data/corejs3-shipped-proposals’
- LeetCode|LeetCode 876. 链表的中间结点
- 用c#转换word或excel文档为html文件|用c#转换word或excel文档为html文件,C#实现DataSet内数据转化为Excel和Word文件的通用类完整实例...
- 澳洲国立大学|澳洲国立大学 COMP6240 Relational Databases 笔记
- springmvc|springmvc 集成 Spring Data Elasticsearch 遇到的坑
- redis|redis 链表