Advertisement
rishu110067

Untitled

Feb 12th, 2022
1,062
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.79 KB | None | 0 0
  1. class Solution:
  2.     def ispalindrome(self, s, start,end):
  3.         while(start < end):
  4.             if (s[start] != s[end]):
  5.                 return False
  6.             start +=1
  7.             end -=1
  8.         return True
  9.    
  10.     def helper(self, s, result, start, currentlist):
  11.         if start >= len(s):
  12.             result.append(currentlist[:])
  13.            
  14.         end=start
  15.         while end<len(s):
  16.             if (self.ispalindrome(s, start,end)):
  17.                 currentlist.append(s[start:end+1])
  18.                 self.helper( s, result, end+1, currentlist)
  19.                 currentlist.pop()
  20.             end+=1
  21.        
  22.     def partition(self, s: str) -> List[List[str]]:
  23.         result = []
  24.         currentlist=[]
  25.         self.helper(s, result, 0, currentlist)
  26.         return result
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement