java练习(33)

news/2025/2/22 18:03:11

ps:题目来自力扣

最强回文子串

给你一个字符串 s,找到 s 中最长的 回文 子串。

class Solution {
    public String longestPalindrome(String s) {
        if (s == null || s.length() < 1) {
            return "";
        }
        int start = 0, end = 0;
        for (int i = 0; i < s.length(); i++) {
            // 以单个字符为中心扩展
            int len1 = expandAroundCenter(s, i, i);
            // 以两个字符为中心扩展
            int len2 = expandAroundCenter(s, i, i + 1);
            int len = Math.max(len1, len2);
            if (len > end - start) {
                start = i - (len - 1) / 2;
                end = i + len / 2;
            }
        }
        return s.substring(start, end + 1);
    }

    private int expandAroundCenter(String s, int left, int right) {
        while (left >= 0 && right < s.length() && s.charAt(left) == s.charAt(right)) {
            left--;
            right++;
        }
        return right - left - 1;
    }
}


http://www.niftyadmin.cn/n/5860466.html

相关文章

linux 驱动编程配置(minis3c2440)

1.介绍 1. 启动过程&#xff1a;启动u-boot------>>启动linux内核----->>挂载根文件系统 2. uboot是一个裸机程序&#xff0c;是一个bootloader&#xff0c;用于启动linux系统以及系统初始化 ubootloader主要完成了哪些任务&#xff1a;1. 初始化异常向量表&a…

【爬虫基础】第一部分 网络通讯 P1/3

前言 1.知识点碎片化&#xff1a;每个网站实现的技术相似但是有区别&#xff0c;要求我们根据不同的网站使用不同的应对手段。主要是常用的一些网站爬取技术。 2.学习难度&#xff1a;入门比web简单&#xff0c;但后期难度要比web难&#xff0c;在于爬虫工程师与网站开发及运维…

蓝桥杯学习大纲

&#xff08;致酷德与热爱算法、编程的小伙伴们&#xff09; 在查阅了相当多的资料后&#xff0c;发现没有那篇博客、文章很符合我们备战蓝桥杯的学习路径。所以&#xff0c;干脆自己整理一篇&#xff0c;欢迎大家补充&#xff01; 一、蓝桥必备高频考点 我们以此为重点学习…

DApp 开发入门指南

DApp 开发入门指南 &#x1f528; 1. DApp 基础概念 1.1 什么是 DApp&#xff1f; 去中心化应用&#xff08;DApp&#xff09;是基于区块链的应用程序&#xff0c;特点是&#xff1a; 后端运行在区块链网络前端可以是任何框架使用智能合约处理业务逻辑数据存储在区块链上 1…

Windows安装node.js详细教程

一、什么是node.js Node.js 是一个基于 Chrome V8 引擎的javascript运行环境。 Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型。 Node 是一个让 JavaScript 运行在服务端的开发平台&#xff0c;它让javascript成为与PHP、Python等服务端语言平起平坐的脚步语言。 由 Rya…

【Axure视频教程】中继器菜单控制动态面板

今天教大家制作中继器菜单控制动态面板页的原型模板&#xff0c;部分效果如下图所示&#xff1a; 教程包括用中继器制作菜单&#xff0c;以及制作菜单后怎么控制动态面板打开指定页面&#xff0c;这个原型模板是用中继器制作的&#xff0c;所以使用也很简单&#xff0c;只需要在…

centos下使用pyenv管理python版本

在 CentOS 上安装 pyenv 和 pyenv-virtualenv&#xff0c;可以按照以下步骤进行操作&#xff1a; ps: centos7 最高适配到3.9.* 步骤 1&#xff1a;安装依赖 首先&#xff0c;确保你的系统中安装了必需的依赖项。你可以使用以下命令安装它们&#xff1a; [root ~]# yum gro…

掌握.NET Core后端发布流程,如何部署后端应用?

无论你是刚接触.NET Core的新手还是已有经验的开发者&#xff0c;在这篇文章中你将会学习到一系列实用的发布技巧与最佳实践&#xff0c;帮助你高效顺利地将.NET Core后端应用部署到生产环境中 目录 程序发布操作 Docker容器注册表 文件夹发布 导入配置文件 网站运行操作 …