# Permutations 2 LeetCode – Python Solution

LeetCode has a Medium coding Problem in Its’ Algorithm Section “Permutations 2 LeetCode”. Today We are going to solve this problem in Python. LeetCode Link of the Problem is HERE

#### Questions

Given a collection of numbers, `nums`, that might contain duplicates, return all possible unique permutations in any order.

Examples

Input: nums = [1,1,2]
Output:
[[1,1,2],
[1,2,1],
[2,1,1]]

Input: nums = [1,2,3]
Output: [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]
﻿

Constraints:

• `1 <= nums.length <= 8`
• `-10 <= nums[i] <= 10`

#### A solution to Permutations 2 leetcode

class Solution(object):
def permuteUnique(self, nums):
“””
:type nums: List[int]
:rtype: List[List[int]]
“””

• nums.sort()
• result = []
• self.permutation(nums, [],result)
• return result

def permutation(self, numbers, curr, result):

• if len(numbers) == 0:
• result.append(curr)
• for i in range(len(numbers)):
• if i > 0 and numbers[i] == numbers[i-1]:
• continue
• self.permutation(numbers[0:i]+numbers[i+1:], curr + [numbers[i]], result)

Success:

Runtime: 65 ms, faster than 56.15% of Python online submissions for Permutations II

Memory Usage: 13.6 MB, less than 86.58% of Python online submissions for Permutations II.

Python-related posts Visit HERE

C++ related posts Visit HERE

Databases related posts Visit HERE

Data Structures related posts visit HERE

Algorithms related posts visit HERE

Data Science related posts visit HERE

Share the Knowledge