动态规划--计算字符串距离
来源:互联网 发布:网络公开课 编辑:程序博客网 时间:2024/06/07 01:11
题目大概:
给出两个字符串,可以对字符串进行替换,删除,增添,使得这两个字符串一样,问最少需要几步。
思路:
dp题。
刚读完题,感觉这个题好熟悉。
两数组为a[i],,,b[i]。
dp[i][j]记录a数组i长度,b数组j长度是的最少步骤。
1.....当a[i]==b[j]时,dp[i][j]==dp[i-1][j-1]
2.....当不相等时,dp[i][j]=min(dp[i-1][j-1]+1,dp[i-1][j]+1,dp[i][j-1]+1),这三个数的第一个代表了替换,剩下的两个带别了删除和添加。
感想:
无。
代码:
#include <iostream>#include <string>using namespace std;int dp[1001][1001];int main(){int n;cin>>n;for(int i=0;i<n;i++){string a,b;int la,lb;cin>>a>>b;la=a.size();lb=b.size();for(int t=1;t<=la;t++)dp[t][0]=t;for(int t=1;t<=lb;t++)dp[0][t]=t;for(int t=1;t<=la;t++){for(int j=1;j<=lb;j++){ if(a[t-1]==b[j-1]){ dp[t][j]=dp[t-1][j-1];} else {dp[t][j]=min(dp[t-1][j-1]+1,min(dp[t][j-1]+1,dp[t-1][j]+1));}}}cout<<dp[la][lb]<<endl;} return 0;}
0 0
- 动态规划-计算字符串距离
- 动态规划--计算字符串距离
- 动态规划:计算字符串距离
- |NOIOJ|动态规划|2988:计算字符串距离
- Edit Distance 计算两个字符串的变化距离 动态规划
- C++动态规划算法之计算字符串距离
- 动态规划 字符串编辑距离
- 计算机算法--动态规划计算编辑距离
- 编辑距离计算-动态规划法
- 基于动态规划(dynamic programming)的计算两个字符串的编辑距离
- 2988:计算字符串距离(2.6基本算法之动态规划)
- 动态规划法求解距离字符串问题
- 动态规划 - 字符串的编辑距离
- 字符串编辑距离相似度-动态规划
- 动态规划(最小字符串编辑距离实现)
- 动态规划(2)字符串编辑距离
- 动态规划入门之求字符串距离
- 【动态规划】字符串编辑距离(Levenshtein距离)算法
- POJ3668Game of Lines(数学问题)
- 【Linux网络编程】组播代码
- 基于C++的简单24点小游戏
- git版本管理命令行整理
- 使用PhotoView的问题解决
- 动态规划--计算字符串距离
- 从头到尾彻底理解KMP
- HDU 5667 Sequence 【矩阵快速幂】
- Jenkins安装及使用(CentOS6.5)
- HTML5第五课时,字体属性
- mybatis传参只有一个时,如何对参数值进行判断
- Mybatis 中在传参时,$ 和# 的区别
- 动态规划
- NLP+VS︱深度学习数据集标注工具、图像语料数据库、实验室搜索ing...