最長回文自負串1 求長度

2021-07-04 08:48:21 字數 647 閱讀 8410

最長回文字串1  求長度

//回文字元:在判斷時,忽略所有的標點和空格,且忽略大小寫,輸出保持原樣

//本程式為最長字串1,只計算 長度

//核心:開始操作前會有乙個預處理,就是把所有的字元經行篩選和轉換,並構造乙個新字元組,把所有的字母轉換成大寫的字母存入到新字母組中

//然後,再乙個乙個的判斷,這樣會簡單很多

#include

#include

#include//isalpha,isdigit(檢查引數c是否為阿拉伯數字0到9),isprint(功能:判斷字元c是否為可列印字元(含空格)

//說明:當c為可列印字元(0x20-0x7e)時,返回非零值,否則返回零。) 的標頭檔案

#define max 5000+10

char buf[max],s[max];

int main()

for(i=0;i//上面標記的是ok=1;所以在下面出現ok=0時,那麼ok便不會改變成 1

}if(ok && j-i+1>max)

max=j-i+1;          //如果ok是恆等於1的,那麼就說明在i~j之間,就是乙個字串,沒有不符合的情況

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

return 0;

}

manacher演算法求最長回文串長度

manacher演算法 定義陣列p i 表示以i為中心的 包含i這個字元 回文串半徑長 將字串s從前掃到後for int i 0 i由於s是從前掃到後的,所以需要計算p i 時一定已經計算好了p 1 p i 1 假設現在掃瞄到了i k這個位置,現在需要計算p i k 定義maxlen是i k位置前所...

求最長回文字串的長度

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

面試之 求最長回文子串長度

最近太忙,好幾天沒鞏固基礎了。今天,求乙個字串你的最長回文子串。思路 回文字串就是說該字串從前往後和從後往前的內容是一樣的。所以,可以用指標指向陣列的某一元素,從該元素向後和向前遍歷,如果一樣則說明該子串是回文子串。比如 abcdefe 中 efe 就是乙個回文字串。當然 abba 中 abba 就...