最长回文子串

最长回文子串

public static String longestSubStringHuiWen(char[] stringarray, String s) {
		if (stringarray==null || stringarray.length == 0) {
			return "";
		}
		boolean[][] dp = new boolean[stringarray.length][stringarray.length];
		int len = stringarray.length;
		String string = null;
		int maxlen = Integer.MIN_VALUE;
		//i往小了走,j往大了走。
		//length[i][j]代表是i到j间是不是回文串。
		for(int i=len-1; i>=0; i--){
			for(int j=i;j<len;j++){
				//长度为2时,还像等肯定是回文
				dp[i][j] = (stringarray[i] == stringarray[j]) && ((j-i < 3 || dp[i+1][j-1] == true));
				if (dp[i][j]==true && j-i+1>maxlen) {
					string = s.substring(i, j+1);
					maxlen = string.length();
				}
			}
		}
		return string;
	}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值