感觉自己算法太菜了。woc,想找一个算法大佬,给他做舔狗。
package offer;
/**
* 动态规划求解-将字符串A变换为字符串B 所用的最少字符操作次数
*/
public class Day0418_demo01 {
public static int fun(String s1 , String s2){
int len1 = s1.length();
int len2 = s2.length();
int arr[][] = new int[len1][len2];
//边界
for(int i=0; i<len1; i++){
arr[i][0] = i;
}
for(int j=0; j<len2; j++){
arr[0][j] = j;
}
for(int i=1; i<len1; i++){
for(int j=1; j<len2; j++){
int a = s1.charAt(i) == s2.charAt(j) ? 0 : 1;
int d = arr[i-1][j]++;
int in = arr[i][j-1]++;
int sub = arr[i-1][j-1] + a;
arr[i][j] = minNum(d , in , sub);
}
}
System.out.println(arr[len1-1][len2-1]);
return 0;
}
//计算最小值
public static int minNum(int a, int b, int c) {
int min = a > b ? b : a;
return min > c ? c : min;
}
public static void main(String args[]){
fun("asdfwfew" , "jfew");
}
}
可以关注本人公众号一起探讨软件开发技术
分享一篇文章
https://mp.weixin.qq.com/s?__biz=MzkyNjE3NTA0MA==&mid=2247483815&idx=1&sn=96db0e0a93477af0852bf5af835f8234&chksm=c23a1b88f54d929eaf00e9ff1b735ed6863f2897201221fc2ab6ac6f7bb9de46ccad2771011c&token=908380781&lang=zh_CN#rd
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)