Advertisement
Guest User

Untitled

a guest
Apr 4th, 2020
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.94 KB | None | 0 0
  1. class Solution:
  2.    
  3.     def generate(self, current, pos, nums, used, combinations):
  4.         if pos == len(nums):
  5.             combinations.append(current)
  6.             return
  7.    
  8.         for i in range(len(nums)):
  9.             if not used[i]:
  10.                 used[i] = True
  11.                 current = current[0:pos]
  12.                 current.append(nums[i])
  13.                
  14.                 self.generate(current, pos + 1, nums, used, combinations)
  15.                 used[i] = False
  16.                
  17.         if pos == 0:
  18.             return combinations
  19.                
  20.     def unique(self, l:list) -> list:
  21.         unique_list = []
  22.         for x in l:  
  23.             if x not in unique_list:
  24.                 unique_list.append(x)
  25.    
  26.         return unique_list
  27.                
  28.     def permutations(self, nums: list) -> list:
  29.         used = [False for num in nums]
  30.        
  31.         return self.unique(self.generate([], 0, nums, used, []))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement