题解 | #最长回文子串#

最长回文子串

http://www.nowcoder.com/practice/b4525d1d84934cf280439aeecc36f4af

import java.util.*;

public class Solution {
    public int getLongestPalindrome(String A, int n) {
        // write code here
        int strlen = A.length();
        int len = 1;
        int maxlen = 0;
        int left = 0;
        int right = 0;
        for(int i =0 ; i < strlen; ++i) {
            left = i - 1;
            right = i + 1;
            while(left >= 0 && A.charAt(i) == A.charAt(left)) {
                len++;
                left--;
            }
            while(right < strlen && A.charAt(right) == A.charAt(i)) {
                len++;
                right++;
            }
            while(left >= 0 && right < strlen && A.charAt(left) == A.charAt(right)){
                len += 2;
                left--;
                right++;
            }
            if(maxlen < len) {
                maxlen = len;
            }
            len = 1;
        }
        return maxlen;
    }
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
06-24 20:25
腾讯今年实习招了这么多人,后面秋招还会招人吗??想着秋招再战来着
牛客965593684号:腾讯好像2020年之后就是实习生招得多,应届生基本上不招,纯实习转正
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务