浙教版 (2019)3.2 队列优质导学案及答案
展开课程基本信息
课题
(3.2队列)
学习目标
1.理解队列的概念和特性
2.掌握队列的基本操作及其实现
3.用Pythn编程解决队列在生活中的应用
课前学习任务
1.了解生活中排队场景的特点
2.了解医院排队叫号系统中就诊号进出的特点
课上学习任务
【学习任务一】理解队列的概念和特性
1.队列的概念:
队列是一种 的线性表,允许插入的一端称为 ,允许删除的一端称为 。队列中的数据元素称为 。
入队:在队列中 一个元素称为 ;
出队:从队列中 一个元素称为 。
2.队列的特性:
(1)先进先出、后进后出
由队列的定义可知,队列具备“ ”的特点。动画模拟,a1优先入队,接着a2,a3……an依次入队;出队时,队首元素a1优先出队,紧接着是a2,a3,…an,队尾元素an最后出队。
(2)有限序列性
队列也是一种 结构,元素个数是有限的。队列可以是空的,也可以包含多个元素。队列中所有元素呈线性特征, 元素只有一个后继点, 元素只有一个前驱点,其他元素既有一个前驱点,又有一个后继点。
课堂练习:下列事件执行过程与队列特征不相符的是 ( )
A.在汽车加油站排队加油时不允许插队
B.当主机运行速度与打印机的打印速度不匹配时,为打印机设置一个打印数据缓冲区
C.把书叠放成一摞,最底下的书要最后才能拿出来
D.CPU分时系统可以根据用户请求,按顺序快速运行各程序段,实现多用户“同时”工作的假象
【学习任务二】队列的基本操作
1、建队模型搭建,程序调试;
入队模型搭建,程序调试;
出队模型搭建,程序调试;
知识点小结:
队列的概念:___________
队列的特征:____________、______________
队列的基本操作__________、___________、____________
队列的应用
5、队列为空:____________;队列非空:____________;队列元素个数=____________
课堂练习(程序填空并输出最后结果______________):
a=["a", "b", "c", "d", "e", "f"]
q = [0] * 5
head = tail = 0
fr i in range(5):
__________________
tail += 1
while head != tail:
print(______________, end=" ")
head += 1
【学习任务三】队列的应用
举例:信息的加密
解决问题的过程如下:
抽象与建模
思考:加密的过程,符合什么数据结构的特征?
(2)算法分析:以字符串“STRING”为例,根据算法思想画出加密过程:
(3)编写程序,并上机调试
s=input("请输入字符串:")
print("加密后的串为:")
que=[""]*100
head=0
tail=0
fr i in range(len(s)): #把原串全部压入队列
print(que)
while :
print(que[head],end="")
head+=1
if head
浙教版 (2019)选修1 数据与数据结构第五章 数据结构与算法5.4 数据查找优质导学案: 这是一份浙教版 (2019)选修1 数据与数据结构<a href="/xx/tb_c4005697_t4/?tag_id=42" target="_blank">第五章 数据结构与算法5.4 数据查找优质导学案</a>,共3页。
信息技术浙教版 (2019)5.2 迭代与递归优质学案: 这是一份信息技术浙教版 (2019)<a href="/xx/tb_c4005695_t4/?tag_id=42" target="_blank">5.2 迭代与递归优质学案</a>,共3页。
信息技术选修1 数据与数据结构第三章 字符串、队列和栈3.3 栈优质学案: 这是一份信息技术选修1 数据与数据结构<a href="/xx/tb_c4005686_t4/?tag_id=42" target="_blank">第三章 字符串、队列和栈3.3 栈优质学案</a>,共2页。学案主要包含了学习任务一,学习任务二,学习任务三,学习任务四等内容,欢迎下载使用。