摘要: 学了一下最长公共子串,它是属于dp里面的 dp=max{(i,j-1),(i-1,j),(i-1,j-1)+d}问题,不得不说,规划方向确实厉害,当然这只适用于两个字符串匹配的问题,n个字符串的话,我查了一下,要用后缀数组,这个以后再来弄吧。比较难的是记录公共字串,在DP的时候记录好搜索的方向,就可以询步骤得到公共串。尤其1503这题呢,除了把公共部分打印出来,还要把非公共部分打印出来。#include #include #include using namespace std;char a[105] , b[105];int dp[105][105];int rec[105][105];in 阅读全文
posted @ 2013-09-25 16:05 KRisen 阅读(277) 评论(0) 推荐(0) 编辑