算法设计与分析——第4章 动态规划

一、动态规划的基本思想

算法设计与分析——第4章 动态规划_第1张图片

算法设计与分析——第4章 动态规划_第2张图片

二、设计动态规划法的步骤

算法设计与分析——第4章 动态规划_第3张图片

三、动态规划问题的特征

算法设计与分析——第4章 动态规划_第4张图片

矩阵连乘积问题

算法设计与分析——第4章 动态规划_第5张图片

算法设计与分析——第4章 动态规划_第6张图片

算法设计与分析——第4章 动态规划_第7张图片

算法设计与分析——第4章 动态规划_第8张图片

算法设计与分析——第4章 动态规划_第9张图片

算法设计与分析——第4章 动态规划_第10张图片

算法设计与分析——第4章 动态规划_第11张图片

分析最优解的结构

算法设计与分析——第4章 动态规划_第12张图片

分析最优解的结构

算法设计与分析——第4章 动态规划_第13张图片

动态规划算法的基本要素

算法设计与分析——第4章 动态规划_第14张图片

算法设计与分析——第4章 动态规划_第15张图片

最长公共子序列

算法设计与分析——第4章 动态规划_第16张图片

最大子段和

¢ 给定由 n 个整数(包含负整数)组成的序列 a 1 , a 2 ,..., a n ,求该序列子段和的最大值。
l 当所有整数 均为负值 时定义其最大子段和为 0
¢ 所求的最优值为:

算法设计与分析——第4章 动态规划_第17张图片

l
l 例如,当 ( a 1 , a 2 , …… a 7 , a 8 )=(1,-3, 7,8, - 4,12 , -10,6) 时,
最大子段和为:

01背包问题

算法设计与分析——第4章 动态规划_第18张图片

算法设计与分析——第4章 动态规划_第19张图片

最长单调递增子序列

最多拦截导弹

某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它能拦截任意高度的导弹,但是每拦截一发导弹,其拦截能力就下降只能拦截上一次拦截的导弹高度。

某天,雷达捕捉到敌国的导弹来袭,导弹依次飞来,该拦截系统最多能拦截多少导弹呢?

¢ Input:

输入若干组数据。每组数据包括:导弹总个数(正整数<1000),导弹依次飞来的高度(雷达给出的高度数据是不大于30000的正整数,用空格分隔)。若导弹个数为0,则处理结束。

¢ Output:

输出这套系统最多能拦截多少导弹。

数字三角形问题

算法设计与分析——第4章 动态规划_第20张图片

算法设计与分析——第4章 动态规划_第21张图片

 

你可能感兴趣的:(算法设计与分析,算法)