题解 | #最长回文子串#

最长回文子串

https://www.nowcoder.com/practice/12e081cd10ee4794a2bd70c7d68f5507

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextLine()) { // 注意 while 处理多个 case
            String str = in.nextLine();
            int max=0;
		  //将子串确定长度之后来回移动,从大到小判断,第一次获得的结果即为最大
            for (int length = str.length(); length > 0; length--) {
                for (int i = 0; i < str.length() - length + 1; i++) {
                    String subString = str.substring(i, length + i);
                    int start = 0, end = length - 1;
                    //字符串翻转判断相等
                    boolean isHuiwen = subString.equals(new StringBuilder(
                                                            subString).reverse().toString());
                     if(isHuiwen){
                        max=length;
                        break;
                     }
                }
                if(max>0){
                    break;
                }
            }
            System.out.print(max);
        }
    }
}

全部评论

相关推荐

07-17 12:09
门头沟学院 Java
讲的口干舌燥,头都晕了怎么要讲这么长啊
码农索隆:没事,你口干舌燥,他不一定会看,
投递小鹏汽车等公司7个岗位
点赞 评论 收藏
分享
06-26 15:33
青岛工学院 Java
积极的秋田犬要冲国企:他现在邀请我明天面试
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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