LeetCode C 實現最長回文子串

2021-09-10 06:32:02 字數 916 閱讀 3935

在leetcode上做的題,剛開始因為對題目的一點小誤解,所以花了不少時間,最終以16ms的成績通過了。

給定乙個字串s,找到s中最長的回文子串。你可以假設s的最大長度為 1000。

示例 1:

輸入:"babad"輸出:"bab"注意:"aba" 也是乙個有效答案。
示例 2:

輸入:"cbbd"輸出:"bb"
演算法:採取的是中心擴充套件法,即找到以每個字元為中心的最長子串,或者是以兩個字元為中心的最長回文子串(比如bb),最後找出乙個最長的。

**如下:

string findlongestpalindrome(string s)

}return s.substr(start,end-start+1);//取從start到end的子串就是結果

}int expand(string s, int left, int right)

return r - l - 1;

}

測試結果如下:

測試的主函式如下:

#include#include#includeusing namespace std;

int expand(string s, int left, int right);

int main()

LeetCode c 回文鍊錶

題目如下 請判斷乙個鍊錶是否為回文鍊錶。示例 1 輸入 1 2 輸出 false 示例 2 輸入 1 2 2 1 輸出 true 高階 你能否用 o n 時間複雜度和 o 1 空間複雜度解決此題?思路一 首先讀題,不考慮高階情況的話,由於回文鍊錶的數值是對稱的。因此,我們可以遍歷一遍輸入的鍊錶,宣告...

Leetcode C 回文鍊錶

1.題目 請判斷乙個鍊錶是否為回文鍊錶。示例 1 輸入 1 2輸出 false示例 2 輸入 1 2 2 1輸出 true2.code definition for singly linked list.struct listnode class solution if n 1 n 0 return...

LeetCode C 驗證回文串

給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明 本題中,我們將空字串定義為有效的回文串。示例 1 輸入 a man,a plan,a canal panama 輸出 true 示例 2 輸入 race a car 輸出 false 思路 需要注意的是將字元進行大小...