最长公共子序列

来源:互联网 发布:vissim仿真软件下载 编辑:程序博客网 时间:2024/04/30 06:46
#include<iostream>#include<string>using namespace std;string LCS(string s1,string s2){string ans;int i,j;int max=0,maxj=0;int c[100];for(i=0;i<s2.size();i++)for(j=s1.size()-1;j>=0;j--){if (s1[j] == s2[i]) {if (j==0||i==0) {c[j]=1;}elsec[j]=c[j-1]+1;}elsec[j]=0;if (c[j]>max) {max = c[j];maxj = j;}}if (max==0) return "";for(i=maxj-max+1;i<=maxj;i++){ans +=s1[i];}return ans;}int main(){string s1 = "sa22aafffffff";string s2 = "sa22sdfffffff";cout<<LCS(s1,s2)<<endl;return 0;}