最小編輯距離

2022-06-26 10:18:09 字數 484 閱讀 5121

dp[i][j]代表字串word1[0...i-1]與word2[0...j-1]的最小編輯距離。

插入舉例:x:=ex  vs y:=exp

前面的兩個ex都是相同,則編輯距離不變為0,x沒有第三個字元,這裡如果我們插入了乙個字元即可。dp[i][j]=dp[i][j-1]+1;

刪除舉例: x:= exp vs y:= ex

我故意用了這個例子,也就是說插入和刪除是互逆的,就是看我們以誰為物件來看待這個問題。dp[i][j]=dp[i-1][j]+1;

替代舉例: x:= sitten vs y:=sitting

這裡例子的第五個字元需要替代,為什麼要替代呢? 因為第四個字元和第六個字元相同(這裡就需要用dp,也就是說,需要乙個空間來記錄之前的比較結果和之後的比較結果)。

class

solution

}return

dp.back().back();

}};

最小編輯距離

題目描述給定兩個字串str1和str2,再給定三個整數ic,dc和rc,分別代表插入 刪除和替換乙個字元的代價,請輸出將str1編輯成str2的最小代價。輸入 abc adc 5,3,2 輸出 2 輸入 abc adc 5,3,100 輸出 8 分析使用動態規劃進行解題,dp i j 表示str1的...

最小編輯距離

當前狀態一定不能從後面的狀態推出 解dp題步驟 1.定義dp陣列 2.建立狀態轉移方程 3.確定初始狀態 4.驗證 迴圈順序 對於兩個字串a和b,我們需要進行插入 刪除和修改操作將a串變為b串,定義c0,c1,c2分別為三種操作的代價,請設計乙個高效演算法,求出將a串變為b串所需要的最少代價。給定兩...

NLP 最小編輯距離

最小編輯距離 編輯距離 edit distance 又稱 levenshtein距離,是指兩個字串之間,由乙個轉成另乙個所需的編輯操作次數。最小編輯距離,是指所需最小的編輯操作次數。動態規劃的核心思想是 將待求解的問題分解為若干個子問題 階段 按順序求解子階段,前一子問題的解,為後一子問題的求解提供...