问题描述:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例:输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。 解题思路: 代码如下: class Solution: def longestPalindrome(self, s: ...
分类:
其他好文 时间:
2020-02-16 13:13:20
阅读次数:
68
给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2: 输入: "cbbd"输出: "bb" 解:这题我首先颠倒以下,用的最长公共子串的方法,发现有些情况下是错的, ...
分类:
其他好文 时间:
2020-02-15 18:42:27
阅读次数:
67
解法 比较经典的问题,寻找最长回文子串。Leetcode里提供了多种解法。我采用最直观的解法:中心扩展法。 思路是每次以当前元素为中心向两边扩展,直到遇到不同元素,此时找到一个子串。有两点需要注意的地方: 1)空串和单字符都是回文,直接返回即可。 2)偶数回文和奇数回文的情况。例如:abace是ab ...
分类:
其他好文 时间:
2020-02-15 15:10:53
阅读次数:
57
题目描述 给你一个由小写拉丁字母组成的字符串 s。我们定义 s 的一个子串的存在值为这个子串在 s中出现的次数乘以这个子串的长度。对于给你的这个字符串 s,求所有回文子串中的最大存在值。 输入格式 一行,一个由小写拉丁字母(a~z)组成的非空字符串 s。 输出格式 输出一个整数,表示所有回文子串中的 ...
题目 给定一个字符串,你的任务是计算这个字符串中有多少个回文子串。 具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被计为是不同的子串。 示例 1: 输入: "abc" 输出: 3 解释: 三个回文子串: "a", "b", "c". 示例 2: 输入: "aaa" 输出: 6 说明: ...
分类:
其他好文 时间:
2020-02-11 14:42:50
阅读次数:
65
计算回文字符串最大长度模板题 如果一个字符串正着读和倒着读是一样的,则称它是回文的。 给定一个长度为N的字符串S,求他的最长回文子串的长度是多少。 输入格式 输入将包含最多30个测试用例,每个测试用例占一行,以最多1000000个小写字符的形式给出。 输入以一个以字符串“END”(不包括引号)开头的 ...
分类:
其他好文 时间:
2020-02-07 13:16:22
阅读次数:
71
题目连接 题意:求一个字符串的最长回文子串 题解:是一个Manacher模板题,为了统一奇偶,先预处理在字符间添加间隔,使字符串长度变为偶数,例如"abc"添加分隔符后变成"$#a#b#c#",剩下的就很简单了,这个题也可以用哈希做。就时间复杂度来看Manacher明显比哈希快。 Manacher代 ...
分类:
其他好文 时间:
2020-02-04 23:46:00
阅读次数:
69
"最长回文子串" 题目描述 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1 示例 2 思路1 回文串的意思就是对称,而对称的东西都应该有一个对称中心,那么找回文串只要找到这个对称中心即可。 ...
分类:
其他好文 时间:
2020-02-02 01:04:55
阅读次数:
61
分析: 完整代码: 1 #include <stdio.h> 2 #include <iostream> 3 #include <cstring> 4 using namespace std; 5 6 const int maxn = 1010; 7 char S[maxn]; 8 int dp[m ...
分类:
其他好文 时间:
2020-02-01 14:21:19
阅读次数:
70
题目描述: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2: 输入: "cbbd"输出: "bb" 中心扩展算法我们观察到回文中心的两侧互为镜像。因此,回文可 ...
分类:
其他好文 时间:
2020-01-26 22:07:00
阅读次数:
56