005_LeetCode_5 Longest Palindromic Substring 题解
来源:互联网 发布:mac的桌面壁纸 编辑:程序博客网 时间:2024/05/29 13:02
Description
Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.
求字符串s的最长回文子串。
Example:
Input: "babad"Output: "bab"Note: "aba" is also a valid answer.
Example:
Input: "cbbd"Output: "bb"
解:
求一个字符串的最长回文子串,进行字符串的一次遍历,同时考虑两种情况:
- 遍历到的点的两侧都不与其相等。即:以该点为中心的回文串。此时,只需比较该点左右的两个字符是否相等,以此延长。
- 该点的后一个字符与其相等。此时比较这两个字符的左右的字符是否相等,以此延长。
Java代码:
class Solution { public String longestPalindrome(String s) { if (s.length() < 2) return s; int len = s.length(); int maxLen = 0; int ind = 0; for (int i = 0; i < len - 1; i++) { // 以i为中心的且i的左右不与i相等的回文串 int j = i, k = i; while (j >= 0 && k < len && s.charAt(j) == s.charAt(k)){ j--; k++; } if (maxLen < k - j - 1){ ind = j + 1; maxLen = k - j - 1; } // i和i + 1相等时的回文串 int p = i, q = i + 1; while (p >= 0 && q < len && s.charAt(p) == s.charAt(q)){ p--; q++; } if (maxLen < q - p - 1){ ind = p + 1; maxLen = q - p - 1; } } return s.substring(ind, ind + maxLen); }}
阅读全文
1 0
- 005_LeetCode_5 Longest Palindromic Substring 题解
- LeetCode题解:Longest Palindromic Substring
- LeetCode - Longest Palindromic Substring 题解
- LeetCode题解:Longest Palindromic Substring
- 5. Longest Palindromic Substring 题解
- 005Longest Palindromic Substring
- 005 - Longest Palindromic Substring
- LeetCode 题解(67): Longest Palindromic Substring
- LeetCode题解——Longest Palindromic Substring
- LeetCode题解-5. Longest Palindromic Substring
- LeetCode题解-5-Longest Palindromic Substring
- LeetCode Algorithms 5. Longest Palindromic Substring 题解
- 5. Longest Palindromic Substring LeetCode题解
- LeetCode题解系列--5. Longest Palindromic Substring
- Leetcode题解-5. Longest Palindromic Substring
- LeetCode题解(Golang实现)--Longest Palindromic Substring
- leetcode题解-5. Longest Palindromic Substring
- leetcode题解-647. Palindromic Substrings && 5. Longest Palindromic Substring
- java日常学习:构造函数练习
- 更新不要停 11.1号苹果带来iOS 11.1正式版
- 关于MPI补充之通信篇
- [LeetCode-Algorithms-20] "Valid Parentheses" (2017.11.1-WEEK9)
- Scrollview嵌套listVIew冲突问题的解决
- 005_LeetCode_5 Longest Palindromic Substring 题解
- day08-WorkAndStudy
- Python之缩进错误
- Java消息中间件学习笔记七 -- Spring中使用JMS
- cglib动态代理[基于类操作的动态代理实现]
- 数据结构-C语言 栈的简单应用——括号匹配
- 简图记录-linux内核同步基础
- 前后台分离开发 后台进行跨域设置
- 特斯拉首次正面回应在华建厂事宜!别高兴太早,独资建厂的特斯拉给不了你白菜价