- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
教学设计
课程基本信息
学科
信息技术
年级
高三年级
学期
秋季
课题
算法的设计
教科书
书名:算法初步
出版社:浙江教育出版社出版日期:2022年1月
教学目标
1.通过设计算法解决问题以及对算法的的层层改进,体验算法效率的差别(信息意识)。
2.掌握算法分析的一般方法和过程,能够分析算法的时空复杂度(计算思维和信息意识)。
3.活用之前掌握的算法来解决实际问题(数字化学习与创新)。
4.利用程序设计语言编写程序实现算法(计算思维)。
5.通过对算法的改进,体会实际算法设计过程中为提高算法效率不断精益求精的探索精神(信息社会责任)。
教学内容
教学重点:
1.分析算法的时空复杂度,思考得出有效的改进方法。
2.利用程序设计语言编写程序实现算法。
教学难点:
分析算法的时空复杂度,思考得出有效的改进方法。
教学过程
一、微课引入
师:同学们好,通过前面的学习,我们已经掌握了算法评价和度量的相关知识,在算法设计中,我们就可以利用这一知识对算法进行设计并加以改进。今天我们就针对一个实际问题来体验算法设计和优化的过程。
二、微课学习
问题呈现
为了快速准确地将快递商品运送到消费者手中,物流行业有许多亟待解决的问题。
快递件装集装箱问题:某物流公司的运输车辆有限,当快递件从某个中转站A到中转站B的过程中,必须要考虑将哪些快递件装箱并进行运输,才能更好地满足客户需求。
现在假设中转站A中共有n个快递件,每个快递件有一个体积参数vi,和重要程度参数w
1.设计解决问题的正确算法
师:用计算机解决问题,需要在分析问题的基础上,根据问题特征进行抽象和建模并设计算法,最后用某种程序设计语言予以实现。
(1)抽象和建模
师:问题需要从n个快递件选择某几个快递件装箱,在不超过车厢容量的前提下使得装上车的快递件重要程度之和最大。联系题目中提到的两个参数,设定三个数组描述每个快递件的参数:
vi
wi
xi
所以该问题的解空间为{x1,x2,x3,…,xn},其中xi=1或者x
(2)设计算法
针对这个问题的解空间树,可以采用回溯法搜索整个解空间。回溯法按照深度优先的搜索方式,从初始状态出发,根据产生子节点的约束条件搜索问题的解。当发现当前节点的状态不满足约束条件时,就回溯并尝试其他搜索路径,直到找到问题的解。在2n
i=1
根据约束条件,逐层判断每个快递件是否装入车厢,若装入的快递件总体积没有超出车厢的容量V,则可以选择装入(xi=1
举例示范(n=4,V=5):
进一步思考可以发现还存在几种特殊情况:
1.若所有快递件都可以装上车,则无需通过回溯法计算。
2.如上图所示,四个圆框处的搜索是可以省略的,因为在当前情况下,第4个快递件无论装不装车都无法超过前面出现过的最大值。经过进一步思考发现前t层的装入情况确定后当前重要程度之和为curw,而第t+1层到第n层的快递件重要程度之和为rsum,此时若将其全部装入车厢后的重要程度之和curw+rsum仍然没有超过之前已经得到的最优方案的重要程度之和bestw,则没有继续向下搜索的必要。在搜索时将该条件作为限界条件,表示为:
curw+rsumbestw
(3)程序实现
根据以上分析得到的约束条件和限界条件,程序代码如下:
(4)分析算法的时间和空间复杂度
解决该问题的解空间树的第1层到第n层节点总数为2n+1?1,减去根节点后,左右孩子节点总数均为2n?1。搜索左边孩子节点需要用到约束条件,时间复杂度为O1,搜索右边孩子节点需要用到限界条件,时间复杂度为On
由于采用递归回溯来实现该算法,在程序运行过程中需要使用“栈”,根据时间复杂度的分析,每个节点至多进栈1次,所以算法的空间复杂度为O2
2.降低算法时间复杂度
(1)分析改进方案
目前采用的回溯法的时间复杂度为On×
原算法的约束条件为:i=1
采用动态规划算法,可以转化为:i=2
即:i=2
采用j?表示到达车厢容量V之前的某一目标容量,约束条件可以描述为:
k=1i
前i个物品中选取若干个物品装入容量不超过j?的车厢时获得的最大价值用fij
f
(2)改进算法
(3)分析算法的时间和空间复杂度
算法主要是通过两层for循环实现的,所以其时间复杂度为On×V,由于采用二维数组f进行辅助存储,因此空间复杂度为
3.降低算法空间复杂度
(1)分析改进方案
采用动态规划算法后,由于算法的空间复杂度为On×
考虑用一维数组dp表示二维数组f,采用重复覆盖的方式记录每个容量j对应的最大价值:
dp
(2)改进算法
(3)分析算法的时间和空间复杂度
一维数组仍采用两层for循环实现的,所以其时间复杂度保持不变,为On×V,但由于采用二维数组dp进行辅助存储,因此空间复杂度为
三、课堂小
您可能关注的文档
- 高中 信息技术 浙教版 选修1 算法初步1.1问题的形式化-表格式教案.docx
- 高中 信息技术 浙教版 选修1 算法初步1.2算法的概念及其特征-表格式教案.docx
- 高中 信息技术 浙教版 选修1 算法初步1.3 算法与数据结构的关系-表格式教案.docx
- 高中 信息技术 浙教版 选修1 算法初步2.3分治算法-表格式教案.docx
- 高中 信息技术 浙教版 选修1 算法初步2.3分治算法-表格式教学设计.docx
- 高中 信息技术 浙教版 选修1 算法初步项目挑战: 旅游路线规划——寻找最想游览的环形旅游路线-表格式教案.docx
- 人教版人文地理七年级下册第二课 日益严峻的资源问题-表格式教案.docx
- 人教版人文地理七年级下册第二课 山川秀美(表格式)教学设计.docx
- 人教版人文地理七年级下册第三课 西北地区-表格式教案.docx
- 人教版人文地理七年级下册第三课 西北地区-表格式教学设计.docx
最近下载
- 钢结构网架工程监理实施细则.docx VIP
- 卡萨帝BCD-629WDSTU1冰箱使用说明书.pdf
- (江苏省高中信息技术学业水平考试.doc VIP
- 2024-2030年中国科创板市场发展分析及行业投资策略建议研究报告.docx
- 清华《社会保障概论》全套PPT课件.pptx VIP
- 西南大学22秋[0432]《地理信息系统》在线作业答案.docx VIP
- 政治-江西省“三新”协同教研共同体2024-2025学年高一12月联考.pdf VIP
- 空中交通管理基础全套教学课件.pptx VIP
- 2025-2026新人教版小学3三年级数学上册【全册】测试卷【含答案】.pdf VIP
- 南京大学博士(硕士)学位论文编写格式规定(试行).docx VIP
原创力文档


文档评论(0)