注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看附件。没有帐号?注册账号
x
java提交老是过不了,转换成c++又可以过。
public string longestPalindrome(String s)
{
int len = s.Length;
boolean[][] P = new boolean[len,len]; //java: boolean[][]
for (int i = 0; i < len; i++) {
for (int j = 0; j < len; j++) {
P[i][ j] = false;
}
}
int start=0;
int end = 0;
int max = 0;
for (int i = 0; i < len; i++)
{
for (int j = 0; j < i; j++)
{
P[j][i] = (s.charAt[j] == s.charAt[i] && (i - j < 2 || P[j + 1][i - 1]));
if (P[j][i] && max < (i - j + 1))
{
max = i - j + 1;
start = j;
end = i;
}
}
P[i][i] = true;
}
return s.substring(start,end-start+1);
} |