[LeetCode]Longest Palindromic Substring

来源:互联网 发布:支付宝没开网络被盗刷? 编辑:程序博客网 时间:2024/06/16 11:03

Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longest palindromic substring.


class Solution {public:std::string findStr(std::string s, int left, int right){if (left < 0){return s.substr(left+1, 1);}if (right >= s.size()){return s.substr(right-1, 1);}while(left >= 0 && right <= s.size() - 1){if (s[left] == s[right]){left --;right ++;}else{    break;}}left ++;right --;return s.substr(left, right - left + 1);}    string longestPalindrome(string s) {   if (s.size() < 1){return "";}std::string ans;for (int i = 0; i < s.size(); i++){//s[i]位于回文数的中间std::string rct = findStr(s, i - 1, i + 1);if (rct.size() > ans.size()){ans = rct;}//s[i]非中间rct = findStr(s, i, i + 1);if (rct.size() > ans.size()){ans = rct;}}return ans;    }};


0 0
原创粉丝点击