2021学年6.2 POI数据的组织与应用教学设计
展开
这是一份2021学年6.2 POI数据的组织与应用教学设计,共5页。
课程标准
和
教学目标
数据排序的应用
教材内容:5.3数据排序的应用
适应的课程标准:
1.7 通过实现数据的排序和查找,体验迭代和递归的方法,理解算法与数据结构的关系。
教学目标:
●能针对具体的问题情境,选择合适的数据组织形式。
●能够完整地进行抽象与建模、设计算法与数据结构、程序实现,解决排序算法的应用问题。
指向的核心素养:
●信息意识:学生能够结合生活中的实例描述数据的内涵与外延,能够将有限制条件的、复杂生活情境中的关系进行抽象,有意识地选择恰当的数据结构表达数据的逻辑关系。
●计算思维:能够从数据结构的视角审视基于数组、链表的程序,解释程序中数据的组织形式,描述数据的逻辑结构及其操作,评判其中数据结构运用的合理性;能够针对限定条件的实际问题进行数据抽象,运用数据结构合理组织、存储数据,选择合适的算法(排序、查找、迭代、递归)编程实现、解决问题。
●数字化学习与创新:要使学生为熟练地运用数据结构解决生活中的真实问题,并在此过程中自主或协作探究;能够评估常见的数字化资源与工具对学习数据结构的价值,根据需要合理选择。
●信息社会责任:能够分析数据与社会各领域间的关系,自觉遵守相应的伦理道德和法律法规。
学习环境:有教学控制软件的多媒体机房,pythn编程环境。
建议课时:1课时
教学环节
教学过程
设计意图
情境导入
导入1:奥运排行榜部分数据(Excel数据)
编号
国家/地区
人口数量(万)
金牌
银牌
铜牌
总数
8
中国
136407
51
21
28
100
20
印度
130420
1
0
2
3
53
美国
32262
36
38
36
110
21
印度尼西亚
26110
1
1
3
5
13
巴西
20529
3
4
8
15
23
尼日利亚
18231
0
1
3
4
52
俄罗斯
14253
23
21
28
72
6
日本
12703
9
6
10
25
请学生操作Excel表,并按关键字“金牌”进行排序。并调换关键字排序。分析按不同关键字排序,对排序的结果有何影响?记录的位置变化?同一条记录的变化?
设计意图:通过导入生活中的数据分析案例,体会排序过程中若要发生交换,则要将待排序的两条记录整体进行交换。
新课讲解
●学习任务一:抽象与建模
问题:从表中的数据可以看出,每个国家的信息是一条记录,包括编号、国家/地区、人口数量、各奖牌数等数据项。根据刚才的实践体验,对记录按关键字排序,交换应当如何进行?
教师总结:排序过程中若要发生交换,则要将待排序的两条记录整体进行交换。
●学习任务二:设计算法与数据结构
对于每个国家,需要记录其一条完整的记录信息,排序之前要将所有国家的信息存储起来,可以选取数组结构来实现。
有两种方案:
一是采用7个一维数组按列存储,即每个数组分别存储每个国家的编号、国家/地区、人口数量、各奖牌数等,如定义b数组存储表中8个国家的金牌数量,其对应的值为[51,1,36,1,3,0,23,9];
二是采用1个一维数组(实际是二维数组)按行存储,每个数组元素对应某个国家的一条记录信息,如[8,‘中国’,136407,51,21,28,100]对应中国的相关信息。
采用不同的存储方式,排序时数据的交换方式也何不同?学生可以展开小组讨论。
老师总结:
若采用采用7个一维数组按列存储,排序过程中,两条记录的对应数据项都要相应交换,即要考虑7个一维数组的操作。
若采用1个一维数组按行存储,排序中的数据交换可对整条记录进行交换操作。
设问:哪种存储形式处理起来更方便快捷?
●学习任务三:程序实现
老师可以提供数据样例,并以csv格式文件分发给学生。读取数据文件时,选择一个一维数组,然后以金牌数为关键字进行降序排序。根据学习情况,读写csv文件的程序代码可以由老师提供给学生。
示例程序:
imprt csv
#数据读入
csvFile = pen("jp.csv", "r") #打开相应数据文件
reader = csv.reader(csvFile) #建立一个读入数据的对象
a = []
fr item in reader:
a.append(item)
csvFile.clse()
#排序
fr i in range(1,len(a)-1): #排序不包含第一行数据
fr j in range(1,len(a)-i):
if int(a[j][3])
相关教案
这是一份高中信息技术浙教版 (2019)选修1 数据与数据结构2.2 链表教案,共4页。教案主要包含了教学设计等内容,欢迎下载使用。
这是一份高中3.1 字符串教学设计,共2页。
这是一份浙教版 (2019)5.3 数据排序教案,共1页。