课件编号20219606

5.4.2 查找算法的应用 课件(22张PPT)

日期:2024-05-20 科目:信息技术 类型:高中课件 查看:23次 大小:1522854Byte 来源:二一课件通
预览图 1/9
5.4.2,查找,算法,应用,课件,22张
  • cover
(课件网) 5.4 数 据 查 找 ———查找算法的应用 册 别:选择性必修1 学 科:高中信息技术(浙教版) 学习目标: 能对给定的文件中的数据进行抽象并建立模型。 能合理选用数据结构,设计查找算法。 能用Python语言编写具体的查找程序。 能自觉对学习生活具体问题抽象建模、设计算法并编写程序及调试程序。 阅读教材P141-144,可根据个性学习暂停或加速播放课程。 查找应用: 想一想: 航空公司VIP会员积分查询部分数据(Excel数据) VIP号 姓名 飞行里程(KM) 积分 600214 韩江辉 16801 519 601278 蒋志来 5321 78 600815 李亚东 28745 436 607854 王庆生 1861 39 605719 李燕 7493 138 603532 王晓燕 6875 102 600101 郑煜明 14253 236 600087 蔡佳宁 112703 958 (一)抽象与建模 问题:从表中的数据可以看出,每个会员的信息是一条记录,包括VIP号、姓名、飞行里程、积分等数据项。 实践体验:Excel表格中,对记录快速查询会员积分,查找应当如何进行? VIP号 姓名 飞行里程(KM) 积分 600214 韩江辉 16801 519 601278 蒋志来 5321 78 600815 李亚东 28745 436 607854 王庆生 1861 39 605719 李燕 7493 138 603532 王晓燕 6875 102 600101 郑煜明 14253 236 600087 蔡佳宁 112703 958 (二)设计算法与数据结构 : 请思考: 数据组织形式有两种,哪种更适合? 数据查找算法有两种,哪种更方便? (二)设计算法与数据结构 数据组织形式有两种,哪种更方便? 方法一是采用4个一维数组按列存储,即每个数组分别存储每个用户的VIP号、姓名、飞行里程(KM) 、积分等,如定义a数组存储表中每个用户的VIP号,其对应的值为[“600214”,” 601278 ” ,” 600815 ” ,” 607854” , ” 605719” ……]; 定义b数组存储表中姓名; 定义c数组存储表中飞行里程(KM); 定义d数组存储表中积分信息。 a b c d VIP号 姓名 飞行里程(KM) 积分 600214 韩江辉 16801 519 601278 蒋志来 5321 78 600815 李亚东 28745 436 607854 王庆生 1861 39 605719 李燕 7493 138 603532 王晓燕 6875 102 600101 郑煜明 14253 236 600087 蔡佳宁 112703 958 b[0] b[1] b[2] b[3] b[4] b[5] b[6] b[7] c[0] c[1] c[2] c[3] c[4] c[5] c[6] c[7] d[0] d[1] d[2] d[3] d[4] d[5] d[6] d[7] a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] (二)设计算法与数据结构 数据组织形式有两种,哪种更方便? 方法二是采用1个一维数组按行存储,每个数组元素对应某个国家的一条记录信息,如a[1]为[600214,韩江辉,16801 ,519]对应第一条记录的相关信息。 VIP号为索引值[0]的元素 积分为索引值[3]的元素 VIP号 姓名 飞行里程(KM) 积分 600214 韩江辉 16801 519 601278 蒋志来 5321 78 600815 李亚东 28745 436 607854 王庆生 1861 39 605719 李燕 7493 138 603532 王晓燕 6875 102 600101 郑煜明 14253 236 600087 蔡佳宁 112703 958 a[i][0] a[i][1] a[i][2] a[i][3] a[1][0] a[1][1] a[1][2] a[1][3] a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] (二)设计算法与数据结构 : 请思考:数据查找算法有两种,哪种更方便? 查找可采用顺序查找算法或二分查找算法, 对数据进行一次查找,采用顺序查找算法。 对数据重复查找,二分查找算法的效率高于顺序查找算法, 但二分查找提前:被查找的数据序列必须是有序,即在查找VIP号前要按VIP号为关键字进行排序。 (三)编写程序并调试 #数据读入 import csv #导入csv模块 csvFile = open("vip.csv", "r") #打开vip.csv数据文件 reader = csv.reader(csvFile) )#建立一个读入数据的对象reader a = [] #定义空列表a for item in reader: #每一行为a列表一个元素 a.ap ... ...

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