博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
最长公共子序列解法(dp)
阅读量:3953 次
发布时间:2019-05-24

本文共 678 字,大约阅读时间需要 2 分钟。

题目描述

给定两个字符串str1和str2,输出两个字符串的最长公共子串,如果最长公共子串为空,输出-1。
输入描述:
输入包括两行,第一行代表字符串srr1,第二行代表字符串str2。\left( 1\leq length(str1),length(str2) \leq 5000 \right)(1≤length(str1),length(str2)≤5000)
输出描述:
输出包括一行,代表最长公共子串。
示例1
输入
复制
1AB2345CD
12345EF
输出
复制
2345
备注:
时间复杂度O(n^{2})O(n
2
),额外空间复杂度O(1)O(1)。(n可以为其中任意一个字符串长度)

#include
#include
#include
using namespace std;int main(void) {
string s1,s2; cin>> s1>>s2; int n=s1.size(),m = s2.size(); int dp[n][m]; //dp[i,j] = dp[0][0] = s1[0] == s2[0]; for (int i=1;i
len) {
len = dp[i][j],end = i; } } } if (len == 0) {
cout<< "-1"<

转载地址:http://muyzi.baihongyu.com/

你可能感兴趣的文章
lower_bound和upper_bound
查看>>
Subsequence POJ - 3061 ( 尺取法 )
查看>>
常见HTTP状态码大全
查看>>
这16个数据可视化案例,惊艳了全球数据行业
查看>>
大数据死亡率报告揭秘:SUV与轿车到底谁更危险?
查看>>
2017年网络流行语TOP20 , 没用过算我输!
查看>>
看完这13张图,不得不佩服还是外国人会玩人工智能
查看>>
从零开始用Python构造决策树(附公式、代码)
查看>>
精华 | 12个关键词告诉你告诉你什么是机器学习(基础篇)
查看>>
15个优秀的开源项目,让你轻松应对Android开发
查看>>
正态分布为什么常见?
查看>>
大数据下的帝都魔都的爱恨情仇
查看>>
GitHub最著名的20个Python机器学习项目!
查看>>
小白都能看懂的神经网络入门,快收下吧~
查看>>
当白帽黑客遇到了网络诈骗,他是如何套路并反制骗子的?
查看>>
手把手教你36小时搭建无人超市系统 !(附代码)
查看>>
2017新生儿爆款名字出炉!90后的父母们最受欢迎的居然是.....
查看>>
全景图解高铁数据,谁是最有潜力的高铁城市?
查看>>
张小龙现场“约战”跳一跳,发布2018微信全新计划(内附演讲全文)
查看>>
爬取电影天堂的最新电影
查看>>