最長回文子串

2021-09-27 22:10:03 字數 723 閱讀 5175

/*

方法一:暴力法

在first指標和end()指標之間的元素放進tempfind中,尋找tempfind中與*first相同的元素下標,放在pos中,

然後從大到小遍歷pos,將[first,position]內的元素放到temp中,判斷temp與其反轉tmp是否相等;

若相等,則判斷size(temp)>max是否成立,進行更新;成功找到回文數之後退出當前遍歷,++first...

問題:對較長的測試用例,會超出時間限制

*/class solution

for(auto j = pos.end() - 1; j >= pos.begin(); j--)

}}

pos.clear();

first++;

}return result;

}};

方法二:動態規劃方法

依次找到二字元回文,三字元回文。。。參考

方法三:中心擴充套件法:

//解法三:中心擴充套件法

class solution

}return s.substr(start, end - start + 1);

}int expandfromcenter(string s, int l, int r)

return r - l - 1;

}};

最長回文子串 最長回文子串行

1.最長回文子串行 可以不連續 include include include include using namespace std 遞迴方法,求解最長回文子串行 intlps char str,int i,int j intmain include include include using n...

最長回文子串

描述 輸入乙個字串,求出其中最長的回文子串。子串的含義是 在原串連續出現的字串片段。回文的含義是 正著看和倒著看是相同的,如abba和abbebba。在判斷是要求忽略所有的標點和空格,且忽略大小寫,但輸出時按原樣輸出 首尾不要輸出多餘的字串 輸入字串長度大於等於1小於等於5000,且單獨佔一行 如果...

最長回文子串

輸入乙個字元,求出其中最長的回文子串。子串的含義是 在元串中連續出現的字串片段。回文的含義是 正看和倒看相同,如abba和yyxyy,在判斷時候應該忽略所有的空格和標點符號,且忽略大小寫,但輸出應該保持原樣,輸入的字元長度不超過5000,且佔據單獨一行,輸出最長的回文子串 如有多個,輸出,起始位置最...