Programa de Python para imprimir todas las combinaciones posibles de los tres dígitos

Dados 3 dígitos a, b y c. La tarea es encontrar todas las combinaciones posibles de estos dígitos.

Ejemplos:

Input: [1, 2, 3]
Output:
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1

Input: [0, 9, 5]
Output:
0 9 5
0 5 9
9 0 5
9 5 0
5 0 9
5 9 0

Método 1: fuerza bruta o enfoque ingenuo

El enfoque ingenuo es ejecutar 3 bucles de 0 a 3 e imprimir todos los números de la lista si los índices no son iguales entre sí.

Ejemplo:

Python3

# Python program to print all
# the possible combinations
  
def comb(L):
      
    for i in range(3):
        for j in range(3):
            for k in range(3):
                  
                # check if the indexes are not
                # same
                if (i!=j and j!=k and i!=k):
                    print(L[i], L[j], L[k])
                      
# Driver Code
comb([1, 2, 3])

Producción:

1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1

Método 2: Usar itertools.permutations()

Este método toma una lista como entrada y devuelve una lista de objetos de tuplas que contienen todas las permutaciones en forma de lista.

Ejemplo:

Python3

# Python program to print all
# the possible combinations
  
from itertools import permutations
  
# Get all combination of [1, 2, 3]
# of length 3
comb = permutations([1, 2, 3], 3)
  
for i in comb:
    print(i)

Producción:

(1, 2, 3)
(1, 3, 2)
(2, 1, 3)
(2, 3, 1)
(3, 1, 2)
(3, 2, 1)

Publicación traducida automáticamente

Artículo escrito por deepanshumehra1410 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *