码迷,mamicode.com
首页 > 其他好文 > 详细

Longest Palindromic Substring

时间:2015-09-11 10:44:30      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:

 1 class Solution {
 2 public:
 3     string longestPalindrome(string s) {
 4      int min_len=0,max_len=1;
 5      int i,j,k;
 6      if(s.enpty)return "";
 7      if(s.size()==1)return s;
 8      for( i=0;i<s.size())
 9      {
10          if(max_len-i<=max_len/2)break;
11          j=i;
12          k=i;
13          if((s[k]==s[k+1])&&k<s.size()-1)k=k+1;
14          i=k+1;
15          while((s[j-1]==s[k+1])&&(j>0)&&(k<s.size()-1)){k++;j--;}
16          int new_len=k-j+1;
17          if(new_len>max_len){max_len=new_len;min_len=j;}
18          return s.substr(min_len,max_len);       //str.substr(startpos, length);其中 startpos 是起始字符的序号,length 是从 startpos 开始取的字符串长度(包括startpos )
19      }
20 
21 };

时间复杂度为o(n^2),仅仅避免了讨论奇数与偶数情况。

Longest Palindromic Substring

标签:

原文地址:http://www.cnblogs.com/daocaorenblog/p/4800103.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!