最長迴文數

一.描述

給定一個字符串 s,找到 s 中最長的迴文子串。

二.代碼

public String longestPalindrome(String s) {
         if (s == null || s.length() == 0) {
            return "";
        }
        int longest=s.length();
        int start=0;

        while(longest>0)
        {
            int i=0;
            start=i;
            int j=i+longest-1;
            boolean exit=true;
            while(i<j)
            {
                if(s.charAt(i)==s.charAt(j))
                {
                    i++;
                    j--;
                }else
                {

                    i=start+1;
                    if(i+longest>s.length())
                    {
                        exit=false;
                        break;
                    }
                    start=i;
                    j=i+longest-1;
                }
            }
            if(exit)
            {
                break;
            }
            longest--;
        }
        return s.substring(start,start+longest);
        
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章