BM73-最长回文子串

news/2024/11/25 3:53:42/

题目

对于长度为n的一个字符串A(仅包含数字,大小写英文字母),请设计一个高效算法,计算其中最长回文子串的长度。

数据范围:1≤n≤1000

要求:空间复杂度 O(1),时间复杂度 O(n2)

进阶:  空间复杂度 O(n),时间复杂度 O(n)

示例1

输入:

"ababc"

返回值:

3

说明:

最长的回文子串为"aba"与"bab",长度都为3

示例2

输入:

"abbba"

返回值:

5

示例3

输入:

"b"

返回值:

1


代码

import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可* @param A string字符串* @return int整型*/public int getLongestPalindrome (String A) {//1.创建dp表//2.初始化int n = A.length();boolean[][] dp = new boolean[n][n];//3.填表int len = 1; //记录最长子串的长度for (int i = n - 1; i >= 0; i--) {for (int j = i; j < n; j++) {if (A.charAt(i) == A.charAt(j)) {dp[i][j] = i + 1 < j ? dp[i + 1][j - 1] : true;}if (dp[i][j] && j - i + 1 > len) {len = j - i + 1;}}}//4.返回值return len;}
}


http://www.ppmy.cn/news/773044.html

相关文章

狮子鱼CMS注入漏洞学习

目录 一、狮子鱼ApigoodController.class.php SQL注入漏洞 (一)Hunter 语法 (二) 影响版本 (三)漏洞复现

两台笔记本通过蓝牙传输文件

建立蓝牙连接&#xff1a;添加蓝牙或其它设备添加的设备类型 -> 蓝牙通过蓝牙传输文件1.接受文件的电脑先进行接收文件操作2.发送文件的电脑发送文件

蓝牙配对码配置错误_怎么用手机蓝牙给别人的手机传东西?

打开手机【设置】-【蓝牙】&#xff0c;确保两部手机都打开蓝牙并选择蓝牙的可见性&#xff1b;在列表中找到您需要配对的手机&#xff0c;在第二部手机中点击【配对】提示&#xff1b;选择您需要发送的文件&#xff0c;选择蓝牙发送&#xff0c;然后接收即可。以下是详细介绍&…

Redis 管道

问题由来&#xff1a;如何优化频繁命令往返造成的性能瓶颈&#xff1f; Redis是一种基于客户端-服务端模型以及请求/响应协议的TCP服务。 一个请求会遵循以下步骤&#xff1a; 1、客户端向服务端发送命令分四步(发送命令→命令排队→命令执行→返回结果)&#xff0c;并监听S…

实战-Android 蓝牙文件分享

需求 在文件管理中&#xff0c;增加一个通过蓝牙分享图片的功能 实现 Android蓝牙分享已经有现成的功能实现&#xff0c;直接上代码&#xff1a; private void blueToothSendFile() {try {Intent localIntent null;localIntent new Intent();localIntent.setAction(Intent.…

iOS 蓝牙开发实现文件传输

这是一篇旧文&#xff0c;三年前就写过了&#xff0c;一直没有时间分享出来&#xff0c;最近简单整理了下&#xff0c;希望能帮到有需要的人。   由于我这里没有相关的蓝牙设备&#xff0c;主要用了两个手机&#xff0c;一个作为主设备&#xff0c;一个做为从设备。另外进行蓝…

Ubuntu蓝牙Bluetooth命令行连接发送文件完整流程

1.确保bluez已安装好 $sudo apt install bluez 2.查看当前蓝牙阻塞状态 $sudo rfkill list 如果上面阻塞状态为yes,表示蓝牙关闭,则需要unblock打开蓝牙&#xff1a; $sudo rfkill unblock bluetooth 3.执行bluetoothctl $bluetoothctl 4.扫描其他蓝牙设备 $scan on 5.…

计算机如何用蓝牙实现文件传输,Win10系统电脑通过蓝牙进行传输文件操作步骤...

Win10系统如何使用蓝牙传输文件&#xff1f;相信用过win10系统的用户都知道&#xff0c;win10系统当中的蓝牙功能可以用来连接蓝牙耳机&#xff0c;蓝夜鼠标等设备。但其实&#xff0c;win10系统当中的蓝牙也可以用来传输文件&#xff0c;只需要用蓝牙将电脑与手机连接起来&…