题解 | #计算字符串的距离#

计算字符串的距离

http://www.nowcoder.com/practice/3959837097c7413a961a135d7104c314

  1. 编译距离,动态规划,四种情况同时取最小就行
#include<bits/stdc++.h>

using namespace std;

int main(){

    string s,t;

    while(cin>>s>>t){

        vector<vector<int>> dp(s.size()+1, vector<int>(t.size()+1,0));

        for(int i=0; i<= s.size();i++){
            dp[i][0] = i;
        }

        for(int i=0; i<= t.size();i++){
            dp[0][i] = i;
        }

        for(int i = 1; i<= s.size();i++){
            for(int j = 1; j<= t.size(); j++){
                dp[i][j] = min(dp[i-1][j]+1, min(dp[i][j-1]+1,dp[i-1][j-1]+ (s[i-1]!=t[j-1])));
            }
        }

        cout<<dp[s.size()][t.size()]<<endl;
    }


    return 0;
}
剑指Offer 文章被收录于专栏

剑指offer的解析结合

全部评论

相关推荐

Noob1024:一笔传三代,人走笔还在
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务