leetcode 131 分割回文串

2021-10-04 18:52:40 字數 1110 閱讀 7464

題目:

思路:回溯,寫乙個輔助函式來實現回溯操作。以python**為例,如果當前i==length,就代表已遍歷完字串s,將子路徑path加入最終res中。i記錄了每次回溯的開始index。

**:python版:

def partition(self, s):

res=

length=len(s)

def helper(path,i):

if i==length and path not in res:

return

for j in range(i+1, len(s)+1): # j,下乙個分割位置

temp = s[i:j] # 兩個分割位置確定的字串

if temp == temp[::-1]: # 判斷是否為回文

helper(path+[temp],j)

helper(,0)

return res

c++ 版:

class solution 

//if (i>s.size()) return;

for (int j=i+1;j> partition(string s)

};

2020.4.5號,第一題。

博主是研三狗了,去年秋招面試演算法崗cv相關,慘敗...去年人工智慧&機器學習相關崗位競爭還是很激烈的,博主在公司一直實習也沒啥時間準備,最後正式秋招才發現競爭很激烈啊,沒有一些硬實力(***** or 競賽 or 幾份實習 or 會吹的能力...) 難收穫滿意的offer。最後拿了一些小offer,所幸還是留在了原公司轉正了...

但經過去年的面試感受到,光是會寫python是不夠的,大家的簡歷基本上都是只會寫python+專案經歷or實習經歷,如果僅是這樣感覺得會吹了hhh,畢竟面試技巧也是很重要的,最後工作找的最好的人不一定是最強的人,但善於包裝的人一定很佔優勢。

最近疫情導致還沒開學,想想去年的秋招經歷,痛定思痛,樓主決定還是要重新學學c++,用c++寫題。因為好久不寫c++了,我一般先看python版的解答思路,再用c++寫...所以寫法裡可能會有很多python的影子。

最後計畫每天寫8題,望能堅持下去,盡快能找到一家更優秀的公司

Leetcode131 分割回文串

給定乙個字串 s,將 s 分割成一些子串,使每個子串都是回文串。返回 s 所有可能的分割方案。示例 輸入 aab 輸出 aa b a a b public list partition string s partition s,0 new arraylist res return res index...

LeetCode 131 分割回文串

給定乙個字串 s,將 s 分割成一些子串,使每個子串都是回文串。返回 s 所有可能的分割方案。示例 輸入 aab 輸出 aa b a a b 思路 回溯法 注意回溯的位置 class solution object def partition self,s type s str rtype list...

LeetCode 131 分割回文串

返回 s 所有可能的分割方案。分析 首先要用動態規劃來標記出回文子串的位置,dp i j true表示字串i到j是回文。因此動態規劃判斷時候是用的 dp i j s i s j len 3 dp i 1 j 1 表示當len 3時候只需要判斷兩個端點,其他時候還要判斷中間是否是回文子串。然後使用回溯...