經典演算法題 求對策字串的最大長度

2021-08-26 00:23:08 字數 598 閱讀 4099

題目:輸入乙個字串,輸出該字串對稱子字串的最大長度,如輸入google,則輸出4.

方法一:思路很中規中矩,遍歷這個字串,若有發現相鄰的兩個字元相等,就迴圈判斷與這兩個字元相鄰的兩個字元是否相等,

直到不等,記下字元符合條件的字元個數。最大的個數即為所求。

方法二:在方法一的基礎上略有改動,思路還是一樣,只不過不是一發現相鄰的兩個字元相等就開始迴圈,

而是根據上次出現對稱的字元個數比較對應的兩個字元是否相等,

如果不等,那肯定是不用迴圈的,我們要求最大的長度嗎?哈哈哈...

如果相等,就向裡迴圈,判斷裡面的字元是否相等,不等就退出迴圈,如果都相等的話,說明更長的長度出現了,

我們開始向外迴圈,直到不等為止,記下字元的長度。最後得到的值即為所求。

int counterplan1(const string str) int start=i-k; int end=i+k+1; bool ismore=true; while(starti) } if(!ismore) start=i-k; end=i+k+1; while(start>-1 && end

方法二寫得有點亂,有待完善,可能存在bug。

經典演算法題 求對策字串的最大長度 第二版

經典演算法題 求對策字串的最大長度 第二版 方法一 思路很中規中矩,遍歷這個字串,若有發現相鄰的兩個字元相等,就迴圈判斷與這兩個字元相鄰的兩個字元是否相等,直到不等,記下字元符合條件的字元個數。最大的個數即為所求。此方法適合如google這樣的字串 方法二 思路和方法一時一樣的,適合ggoggle這...

經典演算法題 求對策字串的最大長度 第二版

經典演算法題 求對策字串的最大長度 第二版 方法一 思路很中規中矩,遍歷這個字串,若有發現相鄰的兩個字元相等,就迴圈判斷與這兩個字元相鄰的兩個字元是否相等,直到不等,記下字元符合條件的字元個數。最大的個數即為所求。此方法適合如google這樣的字串 方法二 思路和方法一時一樣的,適合ggoggle這...

幾個最大子字串的演算法題

幾個最大子字串的演算法題 統計乙個字串中所有字元出現的次數 基本思路 建立乙個訪問標誌陣列,初始化為訪問次數0,每訪問一次,將其增1 static int count 128 遍歷字串陣列,每次讀取乙個字元ch count ch 這樣只要遍歷一次陣列就行了。在最後把count i 0的去掉即可 in...