特别注意path[:]这个坑

class Solution(object):
    def permute(self, nums):
        """
        :type nums: List[int]
        :rtype: List[List[int]]
        """
        global res
        global path
        res = []
        path = []
        def backtrack(nums):
            global res
            global path
            if not nums:
                #这里有个坑,不能写path,否则path变,res里面对应的值也会变,必须写path[:]
                res.append(path[:])
                return 
            for i in range(len(nums)):
                path.append(nums[i])
                temp = nums.pop(i)
                backtrack(nums)
                nums.insert(i,temp)
                path.pop()
            return
        nums.sort()
        backtrack(nums)
        return res