w3resource

Python: Create all possible permutations from a given collection of distinct numbers

Python Basic - 1: Exercise-12 with Solution

Write a Python program to create all possible permutations from a given collection of distinct numbers.

Pictorial Presentation:

Python: Create all possible permutations from a given collection of distinct numbers

Sample Solution:

Python Code:

def permute(nums):
  result_perms = [[]]
  for n in nums:
    new_perms = []
    for perm in result_perms:
      for i in range(len(perm)+1):
        new_perms.append(perm[:i] + [n] + perm[i:])
        result_perms = new_perms
  return result_perms

my_nums = [1,2,3]
print("Original Cofllection: ",my_nums)
print("Collection of distinct numbers:\n",permute(my_nums))

Sample Output:

Original Cofllection:  [1, 2, 3]
Collection of distinct numbers:
 [[3, 2, 1], [2, 3, 1], [2, 1, 3], [3, 1, 2], [1, 3, 2], [1, 2, 3]]

Flowchart:

Flowchart: Python - Create all possible permutations from a given collection of distinct numbers

Visualize Python code execution:

The following tool visualize what the computer is doing step-by-step as it executes the said program:

Python Code Editor :

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Python program to check the sum of three elements (each from an array) from three arrays is equal to a target value. Print all those three-element combinations.
Next: Write a Python program to get all possible two digit letter combinations from a digit (1 to 9) string.

What is the difficulty level of this exercise?



Inviting useful, relevant, well-written and unique guest posts