每日一题 2019 - 03 - 02
题目:
Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.
Example 1:
1 | Input: "babad" |
Example 2:
1 | Input: "cbbd" |
解法:
这个题让我们求出给定串中的最长回文串序列,思路大概如下:
- 如果一个串是回文串,那么这个串开头与结尾各去掉一个字符之后仍是回文串
- 在扩充字符串长度时候,要保证一次最多增加两个字符
有了上面的思路,我们就可以从头开始遍历寻找最长回文序列,DP[size][size]定义为动态规划的记录点,也即DP[i][j]代表从长度为i
到j
的串是回文串。
另解:
代码:
1 | class Solution { |