C++ DP solution


  • 0
    B
    int minDistance(string word1, string word2) {
        int m=word1.size(),n=word2.size();
        if(m==0 || n==0)return max(m,n);
        vector<vector<int>> dp(m+1,vector<int>(n,0));
        for(int i=1;i<=m;i++)
            for(int j=0;j<n;j++)
                dp[i][j]=word1[i-1]!=word2[j]?max(dp[i-1][j],dp[i][j-1]):1+dp[i-1][j-1];
        return m+n-2*dp[m][n-1];
    }

Log in to reply
 

Looks like your connection to LeetCode Discuss was lost, please wait while we try to reconnect.