此教程使用C++版本編寫代碼,如需其他版本,請自行修改,并在力扣網站中測試!
題目描述
給你一個字符串 s,找到 s 中最長的回文子串。
示例1:
輸入:s = "babad"
輸出:"bab"
解釋:"aba" 同樣是符合題意的答案。
示例2:
輸入:s = "cbbd"
輸出:"bb"
提示:
1 <= s.length <= 1000
s
僅由數字和英文字母組成
C++題目源碼:
class Solution {
public:
string longestPalindrome(string s)
{
if(s.length()==0)
{
return "";
}
int size=s.length();
int left=0;
int right=0;
int len=1;
int maxPos=0;
int maxLen=0;
for(int i=0;i<size;i++)
{
left=i-1;
right=i+1;
//左邊
while(left>=0&&s[left]==s[i])
{
len++;
left--;
}
//右邊
while(right<size&&s[right]==s[i])
{
len++;
right++;
}
//左邊和右邊對稱
while(left>=0&&right<size&&s[left]==s[right])
{
len+=2;
left--;
right++;
}
if(len>maxLen)
{
maxLen=len;
maxPos=left;
}
len=1;
}
return s.substr(maxPos+1,maxLen);
}
};
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
C++
+關注
關注
22文章
2114瀏覽量
73859 -
代碼
+關注
關注
30文章
4828瀏覽量
69055 -
編寫
+關注
關注
0文章
29瀏覽量
8492
發布評論請先 登錄
相關推薦
![](https://file1.elecfans.com/web2/M00/87/B0/wKgZomRmlImAC1J-AAEFuRKiTmo720.png)
特高壓交流線路Y型復合絕緣子串靜電場分布
通過建立理想條件下特高壓雙回輸電線路丫型復合絕緣子串的三維靜電場有限元分析模型,計算了Y型絕緣子串和均壓環表面電場分布。分析了串長比例、V
發表于 12-30 14:49
?0次下載
![特高壓交流線路Y型復合絕緣<b class='flag-5'>子</b><b class='flag-5'>串</b>靜電場分布](https://file.elecfans.com/web2/M00/49/86/poYBAGKhwMOAVn6xAAAZKBgNgAg189.jpg)
對于絕緣子串,它的電壓分布規律是什么
在使用絕緣子測試儀系列產品對日常運行中的絕緣子串實際巡檢、維護中,我們可以根據絕緣子串的電壓分布規律及安裝使用環境來決定檢測絕緣
word文檔解密方法說明
word文檔解密方法,當我們求取最長回文子串時,常見的方法就是中心擴散法,即從字符中心出發,向兩邊對比,檢查是否相等,若等于,則繼續檢查,并使當前字符中心對應的
如何用python判斷字符串是否為回文
用兩個變量left,right模仿指針(一個指向第一個字符,一個指向最后一個字符),每比對成功一次,left向右移動一位,right向左移動一位,如果left與right所指的元素不相等則退出,最后比較left與right的大小,如果left>right則說明是回文字符串。
Python 如何判斷字符串是否包含子串
方法 使用 字符串 對象的 find 方法,如果有找到子串,就可以返回指定子串在字符串中的出現位置,如果沒有找到,就返回 -1 >> >
評論