次课-链表结点的插入和删除.ppt

次课-链表结点的插入和删除.ppt

ID:52320250

大小:317.01 KB

页数:19页

时间:2020-04-04

次课-链表结点的插入和删除.ppt_第1页
次课-链表结点的插入和删除.ppt_第2页
次课-链表结点的插入和删除.ppt_第3页
次课-链表结点的插入和删除.ppt_第4页
次课-链表结点的插入和删除.ppt_第5页
资源描述:

《次课-链表结点的插入和删除.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、首页同学们加油教学主题链表结点的插入和删除教学目标通过本次课的学习,使学生掌握单链表中结点的插入与删除方法。教学重点1.单链表中结点插入算法的实现2.单链表中结点删除算法的实现教学难点考虑带附加头结点和不带附加头结点两种情况教案主要内容单链表中结点插入算法实现单链表中结点插入举例单链表中结点删除算法实现单链表中结点删除举例链表结点的插入在链表中插入结点有很多情况。下面以带附加头结点的单链表为例进行介绍。单链表结点的插入(1)在指定结点的后面插入新结点插入过程图示(在p结点后面插入新结点q):实现语句:q->next=p->next;p->next=q;单链表结点的插入(2)在指定结点的前

2、面插入新结点在p结点前面插入新结点q的步骤:(1)寻找p结点的前驱结点,使s指向它。(2)在s结点的后面插入q结点。实现语句:s=head;while(s->next!=p)s=s->next;q->next=s->next;s->next=q;单链表结点的插入(3)在值为x的结点后插入一个值为y的结点步骤:(1)申请一个结点空间,用q指向它,并把y放入其中。(2)在链表中查找值为x的结点,找到后用p指向它。(3)在p结点后插入q结点。实现语句:看源程序(8_1)单链表结点的插入(4)在值为x的结点前插入一个值为y的结点步骤:(1)申请一个结点空间,用q指向它,并把y放入其中。(2)在链

3、表中查找值为x的结点,找到后用p指向它,pf指向它的前驱结点。(3)在pf结点后插入q结点。实现语句(两种方法):看源程序(8_2)看源程序(8_3)返回单链表结点插入举例【补例】将【例7-5】改成用菜单选择实现,并在此基础上增加插入功能。分析插入时,按照以下几种情况进行:(1)插入到链首。(2)插入到链尾。(3)插入到指定值的后面。(4)插入到指定值的前面。主函数模块【补例】将【例7-5】改成用菜单选择实现,并在此基础上增加插入功能。主函数流程图源程序运行程序(8_4)看源程序(8_4)插入子模块【补例】将【例7-5】改成用菜单选择实现,并在此基础上增加插入功能。插入子函数流程图源程序

4、运行程序(8_4)看源程序(8_4)返回思考:不用附加头结点,任何修改?(8_6)链表结点的删除在链表中删除结点也有很多情况。下面以带附加头结点的单链表为例进行介绍。单链表结点的删除(1)删除指定结点删除过程图示(删除q结点的后继结点p):实现语句:q->next=p->next;free(p);单链表结点的删除(2)删除值为x的结点步骤:(1)在链表中查找值为x的结点,找到后用p指向它,q指向它的前驱结点。(2)使p结点脱离链表。(3)释放p结点的内存空间。实现语句:看源程序(8_5)返回单链表结点删除举例【补例】在【例7-5】的基础上增加删除功能。分析删除时,按照以下几种情况进行:(

5、1)删除链首结点。(2)删除链尾结点。(3)删除指定值的结点。删除子模块【补例】在【例7-5】的基础上增加删除功能。删除子函数流程图源程序运行程序(8_4)看源程序(8_4)思考:不用附加头结点,任何修改?(8_6)任务相关部分任务程序中的功能“添加一个学生”和“删除一个学生”,实际上就是在链表中插入和删除结点的过程。本次课总结单链表中结点插入算法实现单链表中结点插入举例单链表中结点删除算法实现单链表中结点删除举例下课ThankYou!TheEnd.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。