您的位置:首页 > 其它

求两个字符串的最长公共子串的长度

2015-09-07 20:36 381 查看
int func(char* query, char* text)

{

if (query == NULL || text == NULL)
return 0;

int len1 = strlen(query);
int len2 = strlen(text);

int sum = 0;
int count = 0;
for (int start = 0; start < len2; start++)
{
int i = start;
int j = 0;
count = 0;
while (i < len2 && j < len1)
{
if (query[j] == text[i])
{
i++;
j++;
count++;
}
else
{
if (sum < count)
sum = count;
i = start;
count = 0;
j++;
}
}
if (sum < count)
sum = count;
}

return sum;


}

int main(void)

{

char query[20];
char text[100];

scanf("%s",query);
scanf("%s",text);

int res = func(query, text);
printf("%d\n",res);

return 0;


}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: