给定字符串A和B,输出A和B中的最大公共子串。
比如A="aocdfe" B="pmcdfa" 则输出"cdf"
#include <iostream>
#include <string.h>
#include <assert.h>
using namespace std;
char *strcmp(char *s1,char *s2,char *dest)
{
char*scmp2=s2;
int count = 0, temp = 0;
char *s3 = NULL, *s4=NULL;
while (*s1 != '\0'&&*scmp2 != '\0')
{
s3 = s1;
while (*s1 == *scmp2)
{
temp++;
s1++;
scmp2++;
}
if (temp > count)
{
count = temp;
s4 = s3;
}
temp = 0;
s1++;
scmp2 = s2;
}
for (int i = 0; i < count; i++)
{
*dest++ = *s4++;
}
*dest = '\0';
return dest;
}
int main()
{
char a[] = "aabbbcccccc";
char b[] = "bccccbbbccccc";
char *x =(char*)malloc(100);
strcmp(a, b,x);
cout << x << endl;
system("pause");
return 0;
}