数据结构(Python Java)(微课版) 教案 -单元4递归.docx

数据结构(Python Java)(微课版) 教案 -单元4递归.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

教案

课程名称

数据结构与算法设计

课程代码

总学时

64

课程负责人

任课教师

单元教案

授课日期

年月日—月日

授课地点

授课班级

班级人数

教学单元

单元4递归

教学时数

4

教学目标

AOB1:掌握计算机程序设计中的线性表、栈、队列、树和图的逻辑结构与存储结构。了解递归的数据逻辑组织结构;

AOB3:掌握对算法的科学分析方法。

BOB1:能根据实际问题中的数据特性选择适当的数据结构;

EOB1:掌握使用搜索引擎、论坛、帮助文档、课外书籍等方法解决学习中出现的问题;

教学方式

混合式教学

评价方式

课堂考勤(20%),

课堂活动参与程度(30%)

线下课堂教学参与程度(50%)

教学资源

1.算法与数据结构(Java语言描述),陈媛,清华大学大学出版社

2.电脑50台(含eclips);

3.网络学习资源:

/forums/ST_Arithmetic:

课程平台网址:

/teacher/mainCourse/courseHome.html?courseOpenId=u3bwaoaqhzdgvlcf34d8ea

单元教学设计

第一次课

(2学时)

教学内容

4.1递归的概念

若一个对象部分地包含它自己,或用它自己给自己定义,则称这个对象是递归的。若一个过程直接地或间接地调用自己,则称这个过程是递归的过程。

4.2递归设计:递归问题,必须符合以下三个条件

可以把一个问题转化为一个新的问题,这个新的问题的解决方法与原问题的解法相同,只是所处理的对象有所不同;可以通过转化过程使问题得到简化;要有明确的结束递归的条件,否则递归将会无止境地进行下去,直到耗尽系统资源,必须要有终止递归的条件。

适用递归解决的问题

1.定义是递归的

2.数据结构是递归的

3.问题的解法是递归的

递归的执行过程

递归设计步骤

1.对原问题f(s)进行分析,假设出合理的“较小问题”f(s’);

2.假设f(s’)是可解的,在此基础上确定f(s)的解,即给出f(s)与f(s’)的关系;

3.确定特定情况,即(f(1)或f(0))的解,由此作为递归出口。

教学重点

递归设计

教学难点

递归设计

教学流程

教学环节

教师活动

学生活动

讲评和考勤

(5分钟)

1平台发布任务

2考勤

1考勤

讲授(80分钟)

1.递归的概念(10分钟)

2.递归设计(5分钟)

3.适用递归解决的问题(50分钟)

4.递归的执行过程(10分钟)

5.递归设计步骤(5分钟)

1.积极回答教师提问

2.认真思考、记录关键内容

3.积极参与课堂的讨论和互动

总结与发布课后任务

(5分钟)

1.总结课堂内容以及在练习过程中出现的,问题。

2.布置课后任务

1.思考教师总结

2.记录课后任务

第二次课(2学时)

教学内容

递归的评价

递归的优点:可解决复杂问题;可缩短程序代码、提高编程效率

递归的缺点:不能提高程序的运行效率

递归运行效率问题

斐波那契数列的递归调用树

递归与回溯

回溯法是从问题的某一种可能出发,搜索从这种情况出发所能达到的所有可能。当这一条路走到“尽头”的时候,再倒回上一节点,从另一个可能出发,继续搜索。

回溯是一种思想,递归是一种解决问题的方法。回溯可以用递归来实现,也可以不用递归实现。

迷宫问题

迷宫中设置很多隔壁,对前进方向形成了多处障碍。假设迷宫的每个岔路口只有东南西北四个方向或是这四个方向的子集。

回溯法思想:一种不断试探且及时纠正错误的搜索方法。;从入口出发,按某一方向向前探索,若某处可以到达,则到达新起点;否则试探下一方向。;若所有的方向均没有通路,则沿原路返回到前一点,换下一个方向再继续试探,直到所有可能的通路都试探到。;结果是或找到一条通路,或无路可走又返回到入口点。

递归实现:从入口出发,每到一个结点(岔路口),按东南西北的秩序访问相应方向的下一个结点,如果相应方向没有可以访问的结点,则访问下一个方向。如果四个方向全被访问完,则返回到前一个结点。直到找到出口或回到入口。

递归的关键问题

为防止递归的无休止调用,在递归函数中要及时返回,这是结束条件的作用;在所有的递归函数中都有一个终止递归的条件判断;递归函数可以简化程序,但一般不能提高程序的执行效率。

教学重点

递归的评价

教学难点

递归的评价

教学流程

教学环节

教师活动

学生活动

讲评和考勤

(5分钟)

1.平台发布任务

2.考勤

1.考勤

讲授(60分钟)

1.递归的评价(10分钟)

2.递归运行效率问题(15分钟)

3.递归与回溯(15分钟)

4.迷宫问题(15分钟

文档评论(0)

xiaobao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档