解题思路:
请看小视频
最短编辑距离(字符串的修改)
https://www.bilibili.com/video/BV1fr4y1K7va?share_source=copy_web
注意事项:
参考代码:
#include
using namespace std;
char a[200],b[200];
int f[200][200]={};
int n,m;
int main()
{
scanf("%s%s",a+1,b+1);
n=strlen(a+1);
m=strlen(b+1);
for(int j=0;j<m;j++)
f[0][j]=j;
for(int i=0;i<n;i++)
f[i][0]=i;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
{
f[i][j]=min(f[i][j-1]+1,f[i-1][j]+1);
if(a[i]!=b[j])
f[i][j]=min(f[i][j],f[i-1][j-1]+1);
else
f[i][j]=min(f[i][j],f[i-1][j-1]);
}
printf("%d",f[n][m]);
return 0;
}
0.0分
3 人评分
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:703 |
C语言训练-角谷猜想 (C++代码)(3N+1问题)浏览:1744 |
数列排序 (C语言代码)浏览:827 |
程序员的表白 (C语言代码)浏览:654 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:1294 |
WU-蓝桥杯算法提高VIP-勾股数 (C++代码)浏览:1592 |
三角形 (C++代码)记忆化搜索浏览:1220 |
三角形 (C++代码)递归(存在大量重复计算,容易出现时间超限)浏览:774 |
C语言程序设计教程(第三版)课后习题6.5 (C++代码)浏览:447 |
C语言程序设计教程(第三版)课后习题6.8 (C++代码)浏览:575 |