『中心拓展法』题解 | #最长回文子串#

最长回文子串

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

显示的分奇数和偶数

//奇数
int odd( string A,int n, int Left, int Right )
{
    while( Left>=0 && Right<n && A[Left]==A[Right] )
    {
        --Left;
        ++Right;
    }
    return Right-Left-1;
}

//偶数
int even( string A,int n, int Left, int Right )
{
    while( Left>=0 && Right<n && A[Left]==A[Right] )
    {
        --Left;
        ++Right;
    }
    return Right-Left-1;
}

class Solution {
public:
    int getLongestPalindrome(string A, int n) {
        // write code here
        if( n<=1 ) return n;
        int res=1;//至少为1

        for( int mid=0; mid<n ; ++mid )
        {
            int Left=mid,Right=mid;
            int oddNum=odd( A, n, mid, mid);
            res=max( res, oddNum );
            int evenNum=even( A, n, mid, mid+1);
            res=max( res, evenNum );
        }

        return res;
    }
};
全部评论

相关推荐

11-24 00:11
已编辑
广东工业大学 算法工程师
避雷深圳&nbsp;&nbsp;yidao,试用期&nbsp;6&nbsp;个月。好嘛,试用期还没结束,就直接告诉你尽快找下一家吧,我谢谢您嘞
牛客75408465号:笑死,直属领导和 hr 口径都没统一,各自说了一些离谱的被裁理由,你们能不能认真一点呀,哈哈哈哈哈😅😅😅
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务