关注
// Leetcode 72题 编辑距离
package kuaishou;
import java.util.Scanner;
//public class Main {
public class LevenshteinDistance {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNext()) {
String a = in.nextLine();
String b = in.nextLine();
if(a == null || a.length() == 0){
if(b == null || b.length() == 0)
System.out.println(0);
else
System.out.println(b.length());
}
else if(b == null || b.length() == 0){
System.out.println(a.length());
}else{
int [][] distance = new int [a.length()+1][b.length()+1];
for(int i=0; i<=a.length(); i++)
distance[i][0] = i;
for(int i=0; i<=b.length(); i++)
distance[0][i] = i;
for(int i=1; i<=a.length(); i++){
for(int j=1; j<=b.length(); j++){
int min1, min2;
if(a.charAt(i-1) == b.charAt(j-1))
min1 = distance[i-1][j-1];
else
min1 = distance[i-1][j-1] + 1;
min2 = Math.min(distance[i][j-1]+1, distance[i-1][j]+1);
distance[i][j] = Math.min(min1, min2);
}
}
System.out.println(distance[a.length()][b.length()]);
}
}
}
}
查看原帖
点赞 评论
相关推荐
查看3道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 校招生月薪1W算什么水平 #
35354次浏览 194人参与
# 哪一瞬间觉得自己长大了 #
38551次浏览 493人参与
# “vivo”个offer #
39305次浏览 280人参与
# 如果上班像打游戏,你最想解锁什么技能 #
8550次浏览 70人参与
# vivo工作体验 #
28230次浏览 124人参与
# 为了实习逃课值吗? #
29317次浏览 271人参与
# 工作后明白的那些道理 #
22040次浏览 225人参与
# 一人一个landing小技巧 #
124205次浏览 1447人参与
# 我是面试官,请用一句话让我破防 #
27063次浏览 128人参与
# 实习最想跑路的瞬间 #
87788次浏览 543人参与
# 中美关税战对我们有哪些影响 #
43437次浏览 361人参与
# 机械制造2023笔面经 #
149894次浏览 840人参与
# 如果重来一次你还会读研吗 #
201940次浏览 1932人参与
# AI时代,哪些岗位最容易被淘汰 #
3645次浏览 27人参与
# 中美关系回暖,你会选择出海吗? #
7157次浏览 107人参与
# 华为保温 #
108070次浏览 408人参与
# 哪些行业值得去? #
5712次浏览 50人参与
# i人适合做什么工作 #
11824次浏览 97人参与
# 美团开奖 #
224027次浏览 1154人参与
# 读研or工作,哪个性价比更高? #
78585次浏览 769人参与
# 如果秋招能重来,我会____ #
38141次浏览 303人参与