Leetcode 編輯距離(動態規劃)
給定兩個單詞 word1 和 word2,計算出將 word1 轉換成 word2 所使用的最少運算元 。
你可以對一個單詞進行如下三種操作:
- 插入一個字元
- 刪除一個字元
- 替換一個字元
示例 1:
輸入: word1 = "horse", word2 = "ros" 輸出: 3 解釋: horse -> rorse (將 'h' 替換為 'r') rorse -> rose (刪除 'r') rose -> ros (刪除 'e')
示例 2:
輸入: word1 = "intention", word2 = "execution" 輸出: 5 解釋: intention -> inention (刪除 't') inention -> enention (將 'i' 替換為 'e') enention -> exention (將 'n' 替換為 'x') exention -> exection (將 'n' 替換為 'c') exection -> execution (插入 'u')
char str1[1005];
char str2[1005];
int dp[1005][1005];
int min(int a,int b,int c)
{
int m=(a>b)?b:a;
int n=(m>c)?c:m;
return n;
}
int minDistance(char* word1, char* word2) {
memset(dp,0,sizeof(dp));
int len1=strlen(word1);
int len2=strlen(word2);
strcpy(str1+1,word1);
strcpy(str2+1,word2);
int i,j;
for(i=0;i<=len2;i++) dp[0][i]=i;
for(i=0;i<=len1;i++) dp[i][0]=i;
for(i=1;i<=len1;i++)
{
for(j=1;j<=len2;j++)
{
if(str1[i]==str2[j]) dp[i][j]=dp[i-1][j-1];
else dp[i][j]=min(dp[i-1][j-1]+1,dp[i-1][j]+1,dp[i][j-1]+1);
}
}
return dp[len1][len2];
}
相關文章
- 動態規劃-編輯距離動態規劃
- 演算法:編輯距離問題(動態規劃,詳細解答)演算法動態規劃
- LeetCode72編輯距離LeetCode
- 怎樣衡量兩個字串的相似度(編輯距離動態規劃求解)字串動態規劃
- Java LeetCode 72. 編輯距離JavaLeetCode
- 編輯距離及編輯距離演算法演算法
- Hetao P2071 打字遊戲 題解 [ 綠 ] [ 最小生成樹 ] [ 動態規劃 ] [ 編輯距離 ]遊戲動態規劃
- 【leetcode】72. Edit Distance 編輯距離計算LeetCode
- 【DP】編輯距離
- [leetcode] 動態規劃(Ⅰ)LeetCode動態規劃
- [leetcode 1235] [動態規劃]LeetCode動態規劃
- 線性dp:編輯距離
- 902.最短編輯距離
- 編輯距離演算法演算法
- leetcode總結——動態規劃LeetCode動態規劃
- leetcode題解(動態規劃)LeetCode動態規劃
- leetcode-動態規劃總結LeetCode動態規劃
- 【演算法】動態規劃-優化編輯器問題演算法動態規劃優化
- Levenshtein:計算字串的編輯距離字串
- [LeetCode] 動態規劃題型總結LeetCode動態規劃
- 【leetcode】741 摘櫻桃(動態規劃)LeetCode動態規劃
- LeetCode 動態規劃 House Robber 習題LeetCode動態規劃
- LeetCode入門指南 之 動態規劃思想LeetCode動態規劃
- LeetCode 343. 整數拆分--動態規劃LeetCode動態規劃
- LeetCode:動態規劃+貪心題目整理LeetCode動態規劃
- LeetCode 分割回文串II(動態規劃)LeetCode動態規劃
- 834. 樹中距離之和-困難-樹、圖、動態規劃、深度優先搜尋動態規劃
- LeetCode 1326. Minimum Number of Taps to Open to Water a Garden 動態規劃 離散化 貪心LeetCode動態規劃
- 面試程式碼題(華為)編輯距離面試
- Leetcode 題解演算法之動態規劃LeetCode演算法動態規劃
- 【LeetCode】55. 跳躍遊戲 (動態規劃)LeetCode遊戲動態規劃
- CSP之壓縮編碼(動態規劃)動態規劃
- 動態規劃動態規劃
- [LeetCode 中等 動態規劃 ]221. 最大正方形LeetCode動態規劃
- [leetcode初級演算法]動態規劃總結LeetCode演算法動態規劃
- LeetCode 461. 漢明距離LeetCode
- LeetCode 834 樹中距離之和LeetCode
- 2024.9.6 leetcode 70 爬樓梯 (雜湊表/動態規劃)LeetCode動態規劃