【动态规划】最长公子序列 - dp
来源:互联网 发布:大华网络视频编码器 编辑:程序博客网 时间:2024/05/17 04:06
问题描述:
求出两个字符串中的最长公子序列的长度。
输入:
cnblog
belong
输出:
max length = 4
#include <stdio.h>#include <string.h>int arr[200][200]; /* 表示str1的前i位和str2的前j位的最长公子序列的长度 */int main(){ char str1[100],str2[100]; /* 输入数据 */ scanf("%s%s",str1,str2); int len1 = strlen(str1); int len2 = strlen(str2); /* 初始化数组 */ int i,j; for(i = 0 ; i <= len1 ; ++i) { for(j = 0 ; j <= len2 ; ++j) arr[i][j] = 0; } /* 计算 */ for(i = 1 ; i <= len1 ; ++i) { for(j = 1 ; j <= len2 ; ++j) { /* 字符相同,则最长公子序列长度加1 */ if(str1[i - 1] == str2[j - 1]) { arr[i][j] = arr[i - 1][j - 1] + 1; } else /* 当前字符不相同,则取上次选择的最大值做为当前结果 */ { arr[i][j] = arr[i][j - 1] > arr[i - 1][j] ? arr[i][j - 1] : arr[i - 1][j]; } } } /* 输出结果 */ printf("max length = %d\n",arr[len1][len2]); return 0;}
- 【动态规划】最长公子序列 - dp
- 最长公共子序列-动态规划DP
- 最长共同子序列 --- DP(动态规划)
- 最长上升子序列 动态规划 dp
- 最长公子序列
- 最长共公子序列
- LCS(最长公共子序列)和dp(动态规划)
- 动态规划(DP)之最长上升子序列
- DP 动态规划 Problem A 1001 最长子序列
- NYOJ - 36 - 最长公共子序列(LCS,动态规划DP)
- 最长上升子序列问题-动态规划(DP)
- 动态规划(DP)之最长上升子序列问题
- codevs1576 最长严格上升子序列 动态规划dp
- 最长递增子序列-动态规划dp-51node
- leetcode 376. Wiggle Subsequence 最长摆动序列 + 动态规划DP
- 最长公共子序列(dp动态规划)
- 动态规划之编号动态规划:hdu 1025(dp+二分 求最长上升子序列)
- 动态规划----最长子序列
- [gpu pro]screen space directional occlusion
- LoadRunner小技巧集锦
- Away3D基础教程(一):创建可鼠标交互的基本几何对象
- squid 访问控制
- windows 和linux 命令修改网络配置
- 【动态规划】最长公子序列 - dp
- hdu 3047 Zjnu Stadium(带权并查集)
- 怎样在word2007中插入图片和表格
- System.arraycopy方法的使用
- MATLAB中读取同一路径下所有txt或mat文件的程序
- c#使用SqlDataReader
- 卡上22W不翼而飞谁之过
- 设计模式--Adapter(适配器)
- 【深入浅出】JavaScript (一)初识