public String longestPalindrome(String s) {
int len = s.length();
if (len < 2)
return s;
int iLen = len - 1;
int sIdx = 0;
int eIdx = 0;
int cLen = 0;
for (int i = 0; i < iLen; i++) {
for (int j = len - 1; j > i; j--) {
int ss = i;
int ee = j;
boolean check = true;
while (true) {
if (s.charAt(ss++) != s.charAt(ee--)) {
check = false;
break;
}
if (ss >= ee)
break;
}
if (check) {
if (j - i > cLen) {
cLen = j - i;
sIdx = i;
eIdx = j;
}
break;
}
}
if (len - i < cLen)
break;
}
return s.substring(sIdx, eIdx + 1);
}
2013년 2월 7일 목요일
Longest Palindromic Substring
피드 구독하기:
댓글 (Atom)
댓글 없음:
댓글 쓰기