131 分割回文串(中等,字串)(12 25)

2021-09-05 10:27:16 字數 737 閱讀 4334

給定乙個字串 s,將s 分割成一些子串,使每個子串都是回文串。

返回 s 所有可能的分割方案。

示例:

輸入:"aab"輸出:[

["aa","b"],

["a","a","b"]

]

class solution(object):

def partition(self, s):

""":type s: str

:rtype: list[list[str]]

"""self.res =

self.temp =

def sub_partition(string):

if string == string[::-1]: #到了盡頭,加入到結果

self.temp.pop()

for i in range(1,len(string)):

a = string[:i]

if a == a[::-1]:

sub_partition(string[i:])

self.temp.pop()

sub_partition(s)

return self.res

執行用時: 112 ms, 在palindrome partitioning的python提交中擊敗了91.78% 的使用者

131分割回文串

回溯 res tmp def ispalindrome self,s str 判斷是否是回文串 return s s 1 def dfs self,s str param s param index 初始為0 return if 0 len s 遞迴終止條件,在res中儲存tmp的複製值 tmp.c...

131 分割回文串

題目鏈結 與93題 恢復ip位址思路一致 給定乙個字串 s,將 s 分割成一些子串,使每個子串都是回文串。返回 s 所有可能的分割方案。示例 輸入 aab 輸出 aa b a a b class solution object def partition self,s type s str rtyp...

131 分割回文串 M

給定乙個字串 s,將 s 分割成一些子串,使每個子串都是回文串。返回 s 所有可能的分割方案。示例 輸入 aab 輸出 aa b a a b 分析 一種基礎方案是單個字元作為乙個子串 剩下的構造,只需進行合併操作即可。但這種自底向上的方案,並不好確定組合。那直接進行劃分怎麼樣?以aab為例,aab ...