不知不觉就刷完了五十道leetcode算法题,这么算起来整个大一也差不多刷了120题左右的样子。虽然大一上很遗憾没有继续坚持打ACM,但是同样也有了很多学习其他除了算法外的知识的时间,不过刷题确实可以改变代码习惯和提高编程水平,这也是我坚持学习算法的原因。这一周目的刷题就到此为止了,我的大一的算法+开发并行的学习方式让我的代码水平有了很大的提高。大二开始我应该就开始专注学习Java开发了。啊,大一过的好充实啊!(然后就开始疯狂预习期末考555)。
给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。
示例 1:
输入: "babad"
输出: "bab"
注意: "aba" 也是一个有效答案。
示例 2:
输入: "cbbd"
输出: "bb"
题解
这题我是用的中心拓展法,其实一开始我根本不知道这个方法叫中心拓展法,写出来后看了题解才知道这个居然有名字。思路就是字符串的每一位其实都是一个回文子串的中心,只要从中心向外拓展就可以达到检查回文子串的目的。在这个过程中需要维