关注
// 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()]);
}
}
}
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 校招生月薪1W算什么水平 #
41855次浏览 231人参与
# HR问:你期望的薪资是多少?如何回答 #
67027次浏览 653人参与
# “vivo”个offer #
41130次浏览 288人参与
# 如果上班像打游戏,你最想解锁什么技能 #
9685次浏览 77人参与
# 我和mentor的爱恨情仇 #
77517次浏览 427人参与
# 为了实习逃课值吗? #
31782次浏览 292人参与
# 打工人的精神状态 #
98295次浏览 1287人参与
# 你见过哪些工贼行为 #
27305次浏览 136人参与
# 一人一个landing小技巧 #
125157次浏览 1452人参与
# 被同事甩锅了怎么办 #
23990次浏览 100人参与
# 你的秋招第一场笔试是哪家 #
258377次浏览 2026人参与
# vivo工作体验 #
29019次浏览 125人参与
# 哪一瞬间觉得自己长大了 #
39309次浏览 494人参与
# 和mentor 1on1 都聊什么? #
1971次浏览 21人参与
# 上班后和你想的一样吗? #
87870次浏览 671人参与
# 实习吐槽大会 #
386450次浏览 2156人参与
# 工作后明白的那些道理 #
22778次浏览 225人参与
# 如何准备秋招 #
64483次浏览 830人参与
# 你想留在一线还是回老家? #
62570次浏览 537人参与
# 我是面试官,请用一句话让我破防 #
28610次浏览 132人参与
# 中美关税战对我们有哪些影响 #
44561次浏览 373人参与

