Find the Longest Palindromic Substring?
(Repeated here for convenience)
string LongestPalindrome(string s)
if (string.IsNullOrEmpty(s)) return "";
int start = 0, maxLen = 1;
for (int i = 0; i < s.Length; i++)
ExpandAroundCenter(s, i, i, ref start, ref maxLen);
ExpandAroundCenter(s, i, i + 1, ref start, ref maxLen);
return s.Substring(start, maxLen);
void ExpandAroundCenter(string s, int left, int right, ref int
start, ref int maxLen)
while (left >= 0 && right < s.Length && s[left] == s[right])
Follow on:
if (right - left + 1 > maxLen)
start = left;
maxLen = right - left + 1;
left--;
right++;