求两个字符串的最大公共子串 ,不区分大小写

来源:互联网 发布:西安电子科技大学网络教育 编辑:程序博客网 时间:2024/05/17 07:00
<pre name="code" class="cpp"><pre name="code" class="cpp">#include <iostream>#include <string.h>#include <string>using std::cout;using std::cin;using std::endl;using std::string;int getCommonStrLength(const char * pFirstStr, const char * pSecondStr);int main(){      string str[2];      for(int i=0;i<2;++i)      {            cin>>str[i];      }      int max=getCommonStrLength(str[0].c_str(),str[1].c_str());      cout<<max<<endl;    return 0;}int getCommonStrLength(const char * pFirstStr, const char * pSecondStr){      int max=0;      for(int i=0;i<strlen(pFirstStr);++i)      {                   for(int k=0;k<strlen(pSecondStr);++k)              {                    int j=0;                  while(tolower(pFirstStr[i+j])==tolower(pSecondStr[k+j]))                  {                         ++j;                        if((i+j)>=strlen(pFirstStr) || (k+j)>=strlen(pSecondStr))                        {                              break;                        }                  }                  if(max<j)                  max=j;               }      }      return max;}


                                             
0 0