兩個字符串的最大公共子字符串


char *maxsubstr(char *str1, char *str2)
{
char *p1, *p2, *q1, *q2, *destp;
char *substr;
int max=0, len;
p1 = str1;
while(*p1!='\0')
{
q1=str2;
while(*q1!='\0')
{
len=0;
p2=p1;
q2=q1;
while((*p2!='\0')&&(*q2!='\0'))
{
if(*p2==*q2)
{
p2++;q2++;len++;
}
else
break;
}
if(len>max)
{
max = len;
destp =p1;
}
q1++;
}
p1++;
}
substr=(char*)malloc(sizeof(char)*max);
strncpy(substr,destp,max);
return substr;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章