问题描述:

求出两个字符串中的最长公子序列的长度。

输入:

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;
}

转载于:https://www.cnblogs.com/whongfei/archive/2013/01/30/5247007.html

【动态规划】最长公子序列 - dp相关推荐

  1. 算法设计与分析第4章 动态规划(二)【DP序列问题】

    第3章 动态规划(二)[DP序列问题] 3.2 DP序列问题 (51nod的动态规划教程很不错,讲解很详细,以下分析来自51nod) 1.矩阵取数问题 给定一个m行n列的矩阵,矩阵每个元素是一个正整数 ...

  2. codevs——1576 最长严格上升子序列(序列DP)

     时间限制: 1 s  空间限制: 256000 KB  题目等级 : 黄金 Gold 题解 题目描述 Description 给一个数组a1, a2 ... an,找到最长的上升降子序列ab1< ...

  3. 动态规划——最长上升子序列问题(LIS)

    动态规划--最长上升子序列问题(LIS) 最长上升子序列问题(LIS).给定n个整数A1,A2,-,AnA_1, A_2, \dots , A_n,按从左到右的顺序选出尽量多的整数,组成一个上升子序列 ...

  4. 动态规划—最长公共子序列LCS及模板

    一,问题描述 给定两个字符串,求解这两个字符串的最长公共子序列(Longest Common Sequence).比如字符串1:BDCABA:字符串2:ABCBDAB.这两个字符串的最长公共子序列长度 ...

  5. Bailian2806 公共子序列【最长公共子序列+DP】

    2806:公共子序列 描述 我们称序列Z = < z1, z2, -, zk >是序列X = < x1, x2, -, xm >的子序列当且仅当存在 严格上升 的序列< ...

  6. 动态规划:最长子序列问题

    关于动态规划中的最长子序列问题有很多优秀的解读,在这里推荐一位博主的关于最长子序列的文章,非常不错,配有大量的图片和文字解答,在这里推荐给大家.本文章转载自这里 1.基本概念 首先需要科普一下,最长公 ...

  7. c语言最长公共子序列,算法设计与分析/动态规划——最长公共子序列LCS及模板...

    这位大佬写的对理解DP也很有帮助,我就直接摘抄过来了,代码部分来自我做过的题 一,问题描述 给定两个字符串,求解这两个字符串的最长公共子序列(Longest Common Sequence).比如字符 ...

  8. 最长公共子序列动态规划c语言,动态规划----最长公共子序列(C++实现)

    最长公共子序列 题目描述:给定两个字符串s1 s2 - sn和t1 t2 - tm .求出这两个字符串的最长公共子序列的长度.字符串s1 s2 - sn的子序列指可以表示为 - { i1 < i ...

  9. 动态规划—最长公共子序列问题 HDU-1159 Common Subsequence

    动态规划-最长公共子序列问题 Common Subsequence [ HDU - 1159 ] A subsequence of a given sequence is the given sequ ...

最新文章

  1. maven的配置-2019-4-13
  2. 企业网络推广——企业网络推广公司解读企业新站沙盒期如何优化?
  3. 如何面对边缘计算10个痛点?
  4. hibernate语句_如何优化Hibernate EllementCollection语句
  5. 2018牛客暑假多校二 D(贪心)
  6. 关于c语言字符串函数和一些内存函数的的简介
  7. python爬取b站评论_python高效之爬了B站再爬微博
  8. java hashmap 去重_java数组去重的两种方法
  9. Android:Fragment官方文档
  10. 数学建模国赛-2015A太阳影子定位再研究(未完)
  11. 使用简单好用的WiFi摄像头,远程监控不再难
  12. 聚集索引与非聚集索引
  13. era5气溶胶反演_我院第七届“共享杯”大赛获奖专访来了,各位大气学子进来取经吧!...
  14. 小学校本课程计算机前言,《创意手工》三河小学校本课程——序言
  15. linux中IGV的运行,IGV的使用
  16. 那些年解的疑难性能问题 --- ext4碎片整理
  17. 开机、重启和用户登录注销
  18. 2020年下半年系统集成项目管理资料、精心整理
  19. php45 上海北诺,Bio-Gel P6 生物胶P100 Bio-Rad 150-1940
  20. spark读hive没有权限异常Permission denied

热门文章

  1. 如何查看,当运行一个hibernate 方法后到底执行了哪些SQL语句
  2. HttpContext.Current.Session ,出现未将对象引用设置到实例上
  3. BZOJ2588 Count on a tree DFS序+LCA+值域主席树
  4. DOM4J_Xpath的XML操作总结
  5. 自行架设DNS的操作步骤及相关说明
  6. 使用WebDriver + Java + Junit做自动化测试教程
  7. 雅虎中国弃门户回归搜索 推出新搜索产品线
  8. 如何使用 Python 创建一名可操控的角色玩家
  9. 理解 ajax、fetch和axios
  10. java中的二进制运算简单理解