和多数算法不同的是,有些问题的答案不只一个,而是需要在多个答案中,按照一定标准选出“最佳”答案,这类问题就统称为“优化问题”(optimization problem)。
解决优化问题时常使用动态规划法,优化问题是在多个答案中选择出最佳答案(最优解)。动态规划起初是从快速解决优化问题的过程中诞生的,因此,许多算法书,在介绍动态规划时,往往都会强调优化过程。但须注意的是,动态规划并不仅适用于优化问题,比如二项式系数的求法,并非这些问题需要在两个以上的答案中选择最佳答案,仍然可以使用动态规划求解。