- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
《高级算法与数据结构》课程思政教学案例(一等奖)--第1页
《高级算法与数据结构》课程思政教学案例(一等奖)
一、授课内容
1.1动态规划算法的基本思想
在现实生活中,有一类问题被定义为最优决策问题,这类问题
可能会有许多可行解,每一个解都对应于一个值,我们希望找到具有
最优值的那个解,即最优解。20世纪40年代,RichardBellman首
次使用了动态规划这个术语,用来描述最优决策问题的求解过程。其
核心思想是将最优决策问题按照时间或空间特征分解成若干相互关
联的阶段,以便按次序去求每个阶段的解。各阶段开始时具有客观条
件(称之为状态),当各阶段的状态确定以后,就可以做出不同的决
定,从而确定下一阶段的状态,这种决定称为决策。“动态”是指在
一定条件下,根据上一阶段的状态和决策来导出本阶段的状态,“规
划”是指建立状态转移方程。最优决策问题的难点在于,各个阶段决
策的选取不能任意确定,它既依赖于当前面临的状态,又影响着以后
的发展。
1.2动态规划算法与分治法的区别和联系
动态规划算法与(第二章)分治法类似,都是将待求解问题分
解为若干个子问题,先求解子问题,再结合这些子问题的解得到原问
题的解。与分治法不同之处在于:
(1)适合用动态规划求解的问题经分解得到的子问题往往不是
相互独立的(即重叠子问题),在递归模型上采用分治法自顶向下求
解时,有些子问题被反复计算。动态规划算法正是利用重叠子问题的
1
《高级算法与数据结构》课程思政教学案例(一等奖)--第1页
《高级算法与数据结构》课程思政教学案例(一等奖)--第2页
性质,将各阶段子问题的最优值保存在一个表格中,在需要时以常数
时间查看结果,这样可以避免大量的重复计算。对于一些在递归模型
上具有指数下界的算法来说,当不同子问题的个数随问题的大小呈多
项式增长时,用动态规划的表格式方法来存储重叠子问题的解,可以
将指数时间减少为多项式时间,从而有效降低了时间复杂度。
(2)每个阶段的子问题可能会有许多可行解,当问题的最优解包
含了其子问题的最优解时(即最优子结构),表格里只存储子问题的
最优解就可以了。利用最优子结构性质,动态规划可以自底向上的从
子问题的最优解逐步构造出原问题的最优解,从而有效控制了空间复
杂度。
1.30-1背包问题的动态规划算法
0-1背包问题是指,给定n种物品和一个背包,物品i的重量为
wi,价值为vi,背包的容量为S,问如何选择装入背包中的物品,使
得背包中物品的总价值最大。利用动态规划算法求解该问题的思想是,
先逐步解决容量为1,2,…的小背包问题,最后解决容量为S的背包
问题。
从动态规划的基本性质为切入点,分别证明0-1背包问题具有最
优子结构性质和重叠子问题性质,而后由浅入深地分析初始阶段、终
止阶段及各阶段的问题空间,在此基础上递归定义状态变量(即最优
值)及其状态转移方程。接下来,对于给定的问题实例,以自底向上
的方式计算最优值,最后根据计算最优值时得到的信息,调用递归模
型通过回溯的方式构造最优解。
2
《高级算法与数据结构》课程思政教学案例(一等奖)--第2页
《高级算法与数据结构》课程思政教学案例(一等奖)--第3页
二、实施过程
(一)思政元素类型:
社会主义核心价值观教育,职业理想和职业道德教育。
(二)课堂教学方法:
文档评论(0)