解题思路:
动态规划解决
注意事项:
参考代码:
import java.util.Scanner; public class Demo1205 { public static void main(String[] args) { Scanner in=new Scanner(System.in); String a=in.nextLine(); String b=in.nextLine(); judge(a,b); } private static void judge(String a,String b){ int[][] map=new int[a.length()+1][b.length()+1]; for(int i=0;i<a.length();i++) map[i][0]=i; for(int i=0;i<b.length();i++) map[0][i]=i; for(int i=0;i<a.length();i++){ for(int j=0;j<b.length();j++){ if(a.charAt(i)==b.charAt(j)) map[i+1][j+1]=map[i][j]; else { map[i+1][j+1]=Math.min(map[i][j],Math.min(map[i][j+1],map[i+1][j]))+1; } } } System.out.println(map[a.length()][b.length()]); } }
0.0分
3 人评分