课件编号20095510

3.2 队列-教学设计(表格式)

日期:2024-05-19 科目:信息技术 类型:高中教案 查看:42次 大小:22906Byte 来源:二一课件通
预览图 1/2
队列,教学设计,格式
  • cover
教学设计 课程基本信息 课题 3.2队列 教学目标 1.依据解决问题的需要,恰当的选择数据结构队列。 2.通过项目的实践活动,体验用队列解决问题的基本流程,逐步形成运用队列结构解决问题的思维方式和学科方法。 教学内容 教学重点: 1.队列的应用是3.2队列的概念、特性及基本操作的延续,是在学习了队列相关的操作的基础上,在现实问题中,恰当的选择队列来解决问题。 2.从实际问题中,能恰当地选择队列结构, 教学难点: 1.抽象与建模、设计算法的过程,并用队列的基本操作进行编程实现,可以采用教材中提供的“银行排队叫号系统”实列,参考教材,逐步体验抽象与建模、设计算法、编程实现等过程。 教学过程 一、情景导入 : 【展示生活中的队列,以生活队列为例进行导入】 教师:我们在生活中去超市购物、影院取票都需要排队。去银行、医院办理业务时,取号机能按照到达时间的先后顺序,合理地安排办事次序。这些事件对数据的处理都具有先到先处理的特性,可以使用队列来解决。 学生:看图片思考生活中的队列应用 目的:引出本课课例的队列内容,引发学生对生活中的思考。 二、知识点讲解 【讲解清楚队列的概念、特性】 教师:队列是一种先进先出的线性表,允许插入的一端称为队尾,允许删除的一端称为队首。队列元素:就像同学们按学号排队,学号1是该队的队首,学号6是队尾,学号1-6都是队列元素。队列能实现队尾入队,队首出队。 队列的第一特性:由概念可知,队列具备“先进先出、后进后出”的特点。出队时,队首元素a1优先出队,紧接着是a2,a3,……,an-1 ,队尾元素an最后出队。 第二特性是有限序列性,队列也是一种线性表结构,元素个数是有限的。队列可以是空的,也可以包含多个元素。队列中所有元素呈现线性特征,队首元素只有一个后继点,队尾元素只有一个前驱点,其他元素既有一个前驱点,又有一个后继点。 三、课中小练习 学生做练习,老师讲解 1. 幼儿园小朋友们排队玩滑滑梯,轮流爬上去,再轮流滑下来,此过程用哪种数据结构描述最合适( ) A.链表 B.字典 C.字符串 D.队列 2.下列事件执行过程与队列特征不相符的是( ) A.在汽车加油站排队加油时不允许插队 B.当主机运行速度与打印机的打印速度不匹配时,为打印机设置一个打印数据缓冲区 C.把书叠放成一摞,最底下的书要最后才能拿出来 D.CPU分时系统可以根据用户请求,按顺序快速运行各程序段,实现多用户“同时”工作的假象 四、对列的基本操作以及基础代码讲解 教师:接下来,我们一起来学习一下队列的基本操作。队列一般按顺序结构存储,可以用数组来实现,也可以用链式存储结构存储,这被称为链队列,head纪录链表的头节点,tail纪录链表的队尾节点。 下面队列程序的模拟采用数组来实现。例如要“A”“B”“C”“D”按顺序入队、出队时候,可以创建一个队列que,长度为5,由于操作中队首元素和队尾元素在数组que中的位置在改变,因此需要设置头指针变量head和尾指针变量tail。python代码如下。 通过建队操作生成好之后,字母“A”“B”“C”“D”可以按顺序入队的python代码如下,que[tail] =“A”,A入队,tail指针后移准备下一个元素入队,依次重复,让ABCD都入队, 注意:tail到达最大下标时不能再增加,队列已满! 队列中最多存储n-1个元素。由此可得,那队列为空是什么呢?非常好,head==tail时候队列为空。队列已满的时候tail指向最后索引值的位置,即tail==n-1;聪明的你肯定发现了,head记录队首元素所在的位置,tail记录队尾元素的下一个位置.字母“A”“B”“C”“D”按顺序出队时,排在队首的元素依次出队,head指针变量依次加1,直至head值等于tail值时,队列为空。所以来一起看一下while的条件,11111111111是不是应该在这里填上head != tail ... ...

~~ 您好,已阅读到文档的结尾了 ~~