class Solution(object):
def permute(self, nums):
"""
:type nums: List[int]
:rtype: List[List[int]]
"""
pass
self.res =[]
length = len(nums)
self.used = [False for i in range(length)]
self.generatePermutation(nums,0,[])
# print self.res
return self.res
# visit[] 用于分支去重
def generatePermutation(self,nums,index,p):
if index == len(nums):
self.res.append(p[0:])
return
for i in range(len(nums)):
if not self.used[i]:
p.append(nums[i])
self.used[i] = True
self.generatePermutation(nums,index+1,p)
self.used[i] = False
p.pop()
s = Solution()
n = [1,2,3]
s.permute(n)