程序员人生 网站导航

简单线性动态规划 ―― 编辑距离

栏目:互联网时间:2014-10-02 08:00:00


可用滚动数组压缩空间,略


if s[i] = t[j] then
    dp[i, j] := dp[i-1, j-1]          // no operation required
else
    dp[i, j] := min(
                         dp[i-1, j] + 1,     // a deletion
                         dp[i, j-1] + 1,     // an insertion
                         dp[i-1, j-1] + 1  // a substitution
                     )



加权的情况:


dp[i][j] := min( dp[i - 1][j] + delCost, min( dp[i][j - 1] + delCost, dp[i - 1][j - 1] + changeCost ) )

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐