最長回文子串

2021-08-03 10:41:23 字數 873 閱讀 8528

需要用到的函式:

isalpha():判斷字元是否是字母,大小寫均可。

toupper():將字母轉換成大寫字母。tolower():將字母轉換成小寫字母。

fgets():一次性讀取一整行,遇到換行結束。

//該方法是確定尋找區間後從字串區間的中間位置開始尋找回文串

#include

#include

#include

#define maxn 5000+10

//buf陣列儲存原字串,s陣列儲存字串中所有字母的大寫形式

char buf[maxn],s[maxn];

int p[maxn];

int main()

}//此迴圈針對回文子串長度是偶數的情況

for(int j=0;j<=i&&j+i+1max)}}

//輸出回文串

for(int i=x;i<=y;i++)

printf("%c",buf[i]);

printf("\n");

return 0;

}//該方法是確定尋找區間後從區間的第一位開始往後尋找回文串,需要時間比較長

#include

#include

#include

#define max 5000+10

char buf[max],s[max];

int p[max];

int main()

}for(int i=x;i<=y;i++)

printf("%c",buf[i]);

printf("\n");

printf("%d\n",max);

return 0;

}如若有不正確的地方,歡迎各位大牛指正,不勝感激!

最長回文子串 最長回文子串行

1.最長回文子串行 可以不連續 include include include include using namespace std 遞迴方法,求解最長回文子串行 intlps char str,int i,int j intmain include include include using n...

最長回文子串

描述 輸入乙個字串,求出其中最長的回文子串。子串的含義是 在原串連續出現的字串片段。回文的含義是 正著看和倒著看是相同的,如abba和abbebba。在判斷是要求忽略所有的標點和空格,且忽略大小寫,但輸出時按原樣輸出 首尾不要輸出多餘的字串 輸入字串長度大於等於1小於等於5000,且單獨佔一行 如果...

最長回文子串

輸入乙個字元,求出其中最長的回文子串。子串的含義是 在元串中連續出現的字串片段。回文的含義是 正看和倒看相同,如abba和yyxyy,在判斷時候應該忽略所有的空格和標點符號,且忽略大小寫,但輸出應該保持原樣,輸入的字元長度不超過5000,且佔據單獨一行,輸出最長的回文子串 如有多個,輸出,起始位置最...