- 0
- 0
- 约3.12千字
- 约 5页
- 2026-02-07 发布于江苏
- 举报
链表与链表的基本操作微格教学教案
设计者:吴婷教学对象:大一学生
科目:C++程序设计课题:单链表的基本算法
主要的教学技能:综合技能
教学
目的
和
要求
知识目标:
1、掌握单链表的逻辑结构
2、掌握单链表的定义
3、掌握单链表的基本算法
①向后生成链表算法
②向前生成链表算法
③链表的查找算法,按数据查找
④在单链表的P结点后插入一个信息域为X的新结点
⑤删除单链表结点*P后面的结点
能力目标:
能够使用C++实现单链表
教学
方法、
手段、媒介
教学方法:
讲授、示教、课堂互动、课后作业和辅助答疑
教学手段:
使用板书进行课堂教学
教学媒介:
教科书、板书
主要
教学
内容、
重点、
难点
教学内容:
1、单链表的逻辑结构
2、单链表的定义
3、单链表的基本算法
①向后生成链表算法
②向前生成链表算法
③链表的查找算法,按数据查找
④在单链表的P结点后插入一个信息域为X的新结点
⑤删除单链表结点*P后面的结点
教学重点:
1、单链表的逻辑结构
2、单链表的定义
3、单链表的基本算法
教学难点:
1、链表的查找算法,按数据查找
2、在单链表的P结点后插入一个信息域为X的新结点
3、删除单链表结点*P后面的结点
[导课]
由回顾顺序表的内容(针对其容器特性)导入本次课程内容
1分钟
单链表的逻辑结构
[讲授]单链表的逻辑结构
[板书]顺序表的结构图和单链表的结构图
[提问]线性表的较顺序表的优点?
2分钟
单链表的定义
[讲授]如何用C++定义单链表
[板书]用C++定义一个采用结构类型,并以整型数为数据域的结点
[提问]如何访问下一个结点?
2分钟
3、单链表的基本算法
①向后生成链表算法
[讲授]讲解算法与程序
[板书]画图说明
2分钟
②向前生成链表算法
[讲授]讲解算法与程序
[板书]画图说明
2分钟
③链表的查找算法,按数据查找
[讲授]讲解算法与程序
[板书]画图说明
2分钟
④在单链表的P结点后插入一个信息域为X的新结点
[讲授]讲解算法与程序
[板书]画图说明
2分钟
⑤删除单链表结点*P后面的结点
[讲授]讲解算法与程序
[板书]画图说明
2分钟
4、作业及思考题布置
①复习今天所学内容
②进一步熟悉单链表的基本算法
③预习单链表类型模板
1分钟
同学们,大家好!今天我所要讲授的是C++程序设计中7.2.1节单链表的基本算法。前面XX同学已经为我们介绍过了顺序表,也就是数组。在我们的理解下,数组就像一个容器,它的大小是不可调节的,这一点使我们非常头疼,假如我们买了一个很大的容器,却用来盛比较少的东西,我们会觉得很浪费,但是我们将他换成小容器的话,它又放不下许多东西。所以,链表的出现无形中解决了这个问题,他将一个容器分解成若干个小容器,每一个小容器放入合适大小的元素,然后根据需要将它们链接起来。这些若干个小容器我们把他们叫做结点,通常他们者是按照顺序排列,排列在第一位的那个容器我们叫他为头结点,最后一位的叫尾结点。一个结点包含两个域,一个域存放数据元素info,其数据类型由应用问题决定,当然这个域也可以有多个数据元素,另一个域存放指向该链表中下一个结点的指针link。
我将为大家介绍的下面几个单链表的基本算法,①向后生成链表算法②向前生成链表算法③链表的查找算法,按数据查找④在单链表的P结点后插入一个信息域为X的新结点⑤删除单链表结点*P后面的结点
在介绍算法前我们首先要先学会如何用C++语言来定义结点也就是小容器。我们采用结构类型,并以整型数为数据域的结点定放如下:
Structnode{
intinfo;
node*link;
}
以上我们就定义如下的一个小容器
①向后生成链表算法
node*createdown(){
intdata;
node*head,*tail,*p;
head=newnode;//建立链表表头结点
tail=head;
while(cindata){//按(Ctrl+z)结束
p=newnode;//每输入一个数,申请一个结点
p-info=data;//把数据添加到结点的数据域位置
tail-link=p;//新结点接到链尾结点
tai=p;//尾指针到链尾
}
tail-link=NULL;//链尾加空指针,表示链结束
returnhead;//返回头指针
}
②向前生成链表算法
node*createup(){
node*head,*p;
intdata;
head=newnode;
原创力文档

文档评论(0)