常见的动态规划问题分析与求解1.硬币找零2.字符串相似度/编辑距离(edit distance)3.最长公共子序列(Longest Common Subsequence,lcs)4.最长递增子序列(Longest Increasing Subsequence,lis)5.最大连续子序列和/积6.矩阵链乘法7.0-1背包8.有代价的最短路径9.瓷砖覆盖(状态压缩DP)10.工作量划分11.三次捡苹果附录1:其他的一些动态规划问题与解答(链接)附录2:《算法设计手册》第八章 动态规划 面试题解答
动态规划(Dynamic Programming,简称DP),虽然抽象后进行求解的思路并不复杂,但具体的形式千差万别,找出问题的子结构以及通过子结构重新构造最优解的过程很难统一,并不像回溯法具有解决绝大多数问题的银弹(全面解析回溯法:算法框架与问题求解)。为了解决动态规划问题,只能靠多练习、多思考了。本文主要是对一些常见的动态规划题目的收集,希望能有所帮助。难度评级受个人主观影响较大,仅供参考...