由最长回纹子串引入动态规划编程思想

给定一个字符串求该字符串中的最长回纹子串
 public String longestPalindrome(String s) {
            if(null==s || s.length()<2) return s;
            
            int [] [] db=new int[s.length()][s.length()];
            int start=0;
            int maxLen=1;
            for(int i=0;i<s.length();i++){
                db[i][i]=1;
                if(i<s.length()-1 && s.charAt(i)==s.charAt(i+1)){
                    db[i][i+1]=1;
                    start=i;
                    maxLen=2;
                }
                
            }
            for(int span=3;span<=s.length();span++){
                int i=0;          
                while(i<=s.length()-span){
                    int j=i+span-1;
                    if(s.charAt(i)==s.charAt(j)&& db[i+1][j-1]==1){
                        db[i][j]=1;
                        start=i;
                        maxLen=span;
                    }
                    i++;
                }
            }
            return s.substring(start, start+maxLen);
            
        }

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-01 17:13
想去,但是听说加班强度实在难崩,所以拒绝了,现在有点心梗对面hr感觉也是实习生,打电话的时候怪紧张的,但是感觉人很好嘞
水中水之下水道的鼠鼠:哥们这不先去体验一下,不行再跑呗,大不了混个实习经历(有更好的转正offer就当我没说)
点赞 评论 收藏
分享
强大的马里奥:不太可能,我校计算机硕士就业率99%
点赞 评论 收藏
分享
06-26 17:24
已编辑
宁波大学 Java
迷失西雅图:别给,纯kpi,别问我为什么知道
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-02 17:28
25届每天都在焦虑找工作的事情0offer情绪一直很低落硬撑着面了一个岗位岗位有应酬的成分面试的时候hr给我出各种场景题问的问题比较犀利&nbsp;有点压力面的感觉感觉有点回答不上来本来就压抑的情绪瞬间爆发了呢一瞬间特别想哭觉得自己特别没用没绷住掉眼泪了事后想想觉得自己挺有病的&nbsp;真的破大防了
喜欢唱跳rap小刺猬...:我觉得没关系吧,之前有一次面试leader给我压力面,我顶住了压力,结果入职的时候发现组里氛围很差,果断跑路。其实从面试就能大概看出组的情况,面试体验好的组倒是不一定好,但是面试体验不好的组。。。就很难说
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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