LeetCode之5. 最長迴文子串
阿新 • • 發佈:2018-11-23
LeetCode之5. 最長迴文子串
- 給定一個字串 s,找到 s 中最長的迴文子串。你可以假設 s 的最大長度為 1000。
示例 1:
輸入: “babad”
輸出: “bab”
注意: “aba” 也是一個有效答案。
示例 2:
輸入: “cbbd”
輸出: “bb”
程式碼如下:
class Solution { public: string longestPalindrome(string s) { int length = s.length(); string str; string longestPalin; for (int i = 0; i < length; i++) { str.clear(); for (int j = i; j < length;j++) { str.append(1, s[j]); if (isHuiWen(str)) { if (str.length()>longestPalin.length()) { longestPalin = str; if (longestPalin.length()==length) { return longestPalin; } } } } } return longestPalin; } bool isHuiWen(string s){ int length = s.length(); length--; for (int i = 0; i <=length; i++) { if (s[i]!=s[length-i]) { return false; } } return true; } };