题目
下列不是动态规划算法基本步骤的是()A. 找出最优解的性质,并刻画其结构特征。B. 递归定义最优值。C. 以自顶向下[1]的方式计算出最优值。D. 根据计算最优值时得到的信息,构造最优解。
下列不是动态规划算法基本步骤的是()
A. 找出最优解的性质,并刻画其结构特征。
B. 递归定义最优值。
C. 以自顶向下[1]的方式计算出最优值。
D. 根据计算最优值时得到的信息,构造最优解。
题目解答
答案
C. 以自顶向下[1]的方式计算出最优值。
解析
动态规划算法的基本步骤包括最优子结构的识别、递归定义最优值、计算最优值以及构造最优解。本题需判断哪一选项不属于这些核心步骤。关键在于区分算法的基本步骤与具体实现方式:自顶向下是实现方法之一(如记忆化搜索),而基本步骤更强调自底向上的计算过程。
选项分析
A. 找出最优解的性质,并刻画其结构特征
对应最优子结构的识别,属于动态规划的第一步,是基本步骤。
B. 递归定义最优值
通过递推关系定义子问题的最优值,是动态规划的核心步骤之一。
C. 以自顶向下的方式计算出最优值
自顶向下是动态规划的实现方式(如记忆化递归),但基本步骤中计算最优值通常采用自底向上的迭代填表法。因此,此选项描述的是实现方法而非基本步骤。
D. 根据计算最优值时得到的信息,构造最优解
在计算最优值后,通过回溯构造具体解,属于动态规划的最后一步。