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

计算字符串的编辑距离

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

const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void async function () {
    // Write your code here
   let str1 = await readline()
   let str2 = await readline()
   const dp = new Array(str1.length+1).fill(0).map(() => new Array(str2.length+1).fill(0))
   for(let i=0; i<dp.length; i++) {
       dp[i][0] = i
   }
   for(let j=0; j<dp[0].length; j++) {
       dp[0][j] = j
   }
   for(let m=1; m<dp.length;m++) {
    for(let n=1; n<dp[m].length; n++) {
        if(str1[m-1] == str2[n-1]) {
            dp[m][n] = dp[m-1][n-1]
        } else {
            dp[m][n] = Math.min(Math.min(dp[m-1][n],dp[m][n-1]),dp[m-1][n-1])+1
        }
    }
   }
   console.log(dp[str1.length][str2.length])
}()

全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 14:10
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-07 18:05
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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