标签:res class you out 很多 family output ali note
Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000.
Example 1:
Input: "babad"
Output: "bab"
Note: "aba" is also a valid answer.
Example 2:
Input: "cbbd"
Output: "bb"
查找最长的回文子串,这道题比较简单,方法也很多,不多说了。
1 public class Solution { 2 public string LongestPalindrome(string s) { 3 if (string.IsNullOrEmpty(s)) return s; 4 string result = s[0].ToString(); 5 for (int i = 1; i < s.Length; i++) 6 { 7 int tmp = 0; 8 while (tmp < i && tmp < s.Length - i && s[i - tmp - 1] == s[i + tmp]) 9 tmp++; 10 if (tmp > 0) 11 if (tmp * 2 > result.Length) 12 result = s.Substring(i - tmp, tmp * 2); 13 14 if (i >= s.Length - 1) continue; 15 16 tmp = 0; 17 while (tmp < i && tmp < s.Length - 1 - i && s[i - tmp - 1] == s[i + tmp + 1]) 18 tmp++; 19 if (tmp > 0) 20 if (tmp * 2 + 1 > result.Length) 21 result = s.Substring(i - tmp, tmp * 2 + 1); 22 } 23 return result; 24 } 25 }
5.Longest Palindromic SubString
标签:res class you out 很多 family output ali note
原文地址:https://www.cnblogs.com/Luohys/p/9912328.html