Longest Palindromic Substring
来源:互联网 发布:c语言自学难吗 编辑:程序博客网 时间:2024/06/07 21:32
思路:
最长回文子字符串具有以下特性:S'是S的逆字符串,S'和S的最长公共子序列R,并且这个子序列R是回文串,则R是S的最长回文子串。
一开始不需要求S的逆字符串,否则会超时。直接用两次循环,来比较首尾字符串。下面是
最长公共子序列(连续)的求解方法。
特别注意的是每得到一次结果,都得要判断一下这个结果是否是回文串。
public String longestPalindrome(String s){int len = s.length();int[][] ret = new int[len][len];int k=0;int end=0,max=0;for(int i=0;i<len;i++){for(int j=0;j<len;j++){k=len-1-j;if(s.charAt(i)==s.charAt(k)){if(i==0 || j==0){ret[i][j]=1;}else{ret[i][j]=ret[i-1][j-1]+1;}}else{ret[i][j]=0;}if(ret[i][j]>max && isPalindrome(s.substring(i-ret[i][j]+1,i+1))){max=ret[i][j];end=i;}}}return s.substring(end-max+1,end+1);}public boolean isPalindrome(String s){int len = s.length();for(int i=0;i<len/2;i++){if(s.charAt(i)!=s.charAt(len-1-i)){return false;}}return true;}
0 0
- LeetCode: Longest Palindromic Substring
- LeetCode Longest Palindromic Substring
- LeetCode: Longest Palindromic Substring
- [Leetcode] Longest Palindromic Substring
- Longest Palindromic substring
- [LeetCode] Longest Palindromic Substring
- LeetCode5:Longest Palindromic Substring
- Leetcode : Longest Palindromic Substring
- Longest Palindromic Substring
- Longest Palindromic Substring
- [LeetCode]Longest Palindromic Substring
- leetcode Longest Palindromic Substring
- Longest Palindromic Substring
- LeetCode-Longest Palindromic Substring
- Longest Palindromic Substring
- Longest Palindromic Substring
- [LeetCode] Longest Palindromic Substring
- Longest Palindromic Substring leetcode
- 韩顺平PHP学习视频笔记整理005无序列表 有序列表 框架
- 你听说过XML吗?
- Web移动应用调试工具——Weinre
- sort
- jquery bind('click')传参问题(例如:列表中每行绑定一个事件)
- Longest Palindromic Substring
- 音视频即时通讯解决方案
- Ogre 3DMax导出插件的制作
- AsyncTask
- 【windows】boost 1.4.9安装方法
- 再说注解
- 在一个UILabelView中实现不同的字体和颜色
- Zedboard & Zynq 图像采集 视频开发 (一) 硬件平台搭建
- SQL Server 存储过程之嵌套游标