package org.unclehu; import sun.security.util.Length; /** * 求最长公共子序列 */ import java.util.Scanner; public class LCS { public static void main(String ar... ...
分类:
其他好文 时间:
2018-09-28 01:25:31
阅读次数:
198
设f[i][j]为a序列前i个字符和b序列前j个字符的最长公共子序列,转移很好说就是f[i][j]=max(f[i 1][j],f[i][j 1],f[i 1][j 1]+(a[i]==b[j])) 设g[i][j]为a序列前i个字符和b序列前j个字符的最长公共子序列个数,这个转移是转移f的时候从前 ...
分类:
其他好文 时间:
2018-09-22 21:25:11
阅读次数:
137
public static int MaxLengthSubSequence(String str1, String str2){ int max = 0; int n1 = str1.length(); int n2 = str2.length(); if(str1!=null && str2!=... ...
分类:
其他好文 时间:
2018-09-21 20:51:17
阅读次数:
159
题目描述 回文词是一种对称的字符串——也就是说,一个回文词,从左到右读和从右到左读得到的结果是一样的。任意给定一个字符串,通过插入若干字符,都可以变成一个回文词。你的任务是写一个程序,求出将给定字符串变成回文词所需插入的最少字符数。 比如字符串“Ab3bd”,在插入两个字符后可以变成一个回文词(“d ...
分类:
其他好文 时间:
2018-09-15 13:09:28
阅读次数:
146
题目: 给定一个字符串 s,找到 s 中最长的回文子串。 示例 1: 示例 2: 方法1:暴力求解 思路:可以通从两端到中间遍历字符串,如果碰到字符串是回文串,则该回文串一定是是最长回文串。 效果:判断的整个过程其实有三个内部循环,时间复杂度接近 O(n^3) ,空间复杂度O(n) 方法2:动态规划 ...
分类:
编程语言 时间:
2018-09-09 16:03:46
阅读次数:
159
"$ \rightarrow $ 戳我进POJ原题 " D:Chocolate 总时间限制: 1000ms $ \quad $ 内存限制: 65536kB 描述 Vincent is a chocolate enthusiast and a collector of chocolate since ...
分类:
其他好文 时间:
2018-09-08 21:07:44
阅读次数:
144
最长公共子序列 时间限制:3000 ms | 内存限制:65535 KB 难度:3 ...
分类:
其他好文 时间:
2018-09-03 21:37:53
阅读次数:
208
【题解】 dp转移的时候记录一下,然后倒着推出答案即可。 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 #define LL long long 5 #define rg register 6 #define N 200 ...
分类:
其他好文 时间:
2018-09-01 23:52:24
阅读次数:
180
一,问题描述 给定两个字符串,求解这两个字符串的最长公共子序列(Longest Common Sequence)。比如字符串1:BDCABA;字符串2:ABCBDAB 则这两个字符串的最长公共子序列长度为4,最长公共子序列是:BCBA 二,算法求解 这是一个动态规划的题目。对于可用动态规划求解的问题 ...
分类:
其他好文 时间:
2018-08-31 21:08:30
阅读次数:
167
一、字符串变形 输入两个字符串a和b,a的长度小于b的长度。现在可以在a中的每个位置插入任意字符,使得最终a的长度等于b的长度,问最后a和b中对应位置字符不同的位置的个数。 这个问题可以看做是:带约束的最长公共子序列 考虑形如abcx 和ayybc的两个字符串,第一个字符串不能添加太多字符,否则会导 ...
分类:
编程语言 时间:
2018-08-21 01:09:07
阅读次数:
210