编辑距离(一)

 public int editDistance (String str1, String str2) {
        // write code here

        int n1=str1.length();
        int n2=str2.length();

        int[][] dp=new int[n1+1][n2+1];

        for (int i=1;i<=n1;i++){
            dp[i][0]=dp[i-1][0]+1;
        }

        for (int i=0;i<=n2;i++){
            dp[0][i]=dp[0][i-1]+1;
        }

        for (int i=1;i<=n1;i++){
            for (int j=1;j<=n2;j++){

                if(str1.charAt(i-1)==str2.charAt(j-1)){
                    dp[i][j]=dp[i-1][j-1];
                }else {
                    dp[i][j]=Math.min(dp[i-1][j-1],Math.min(dp[i-1][j],dp[i][j-1]))+1;
                }

            }
        }
        return dp[n1][n2];
    }


全部评论

相关推荐

不愿透露姓名的神秘牛友
07-11 11:24
大家还是用ai改吧,我心疼得要死,就当花钱买教训吧,人家直接拿完钱就跑路了
程序员小白条:简历修改700....神奇,又不是帮你面试,咋的,简历修改从双非变92了还是没实习变成有大厂实习了
点赞 评论 收藏
分享
合不合适,我自己说了才算
码农索隆:hr:“真执着啊,来我公司当法人吧”
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务