Programa para imprimir todos los elementos distintos de una array de enteros dada en Python | Diccionario ordenado

Dada una array de enteros, imprima todos los elementos distintos en la array. La array dada puede contener duplicados y la salida debe imprimir cada elemento solo una vez. La array dada no está ordenada.

Ejemplos:

Input: arr[] = {12, 10, 9, 45, 2, 10, 10, 45}
Output: 12, 10, 9, 45, 2

Input: arr[] = {1, 2, 3, 4, 5}
Output: 1, 2, 3, 4, 5

Input: arr[] = {1, 1, 1, 1, 1}
Output: 1

Este problema tiene una solución existente, consulte Imprimir todos los elementos distintos de un enlace de array de enteros dado. Resolveremos este problema en python rápidamente usando Ordered Dictionary . El enfoque es simple,

  1. Convierta una array en una estructura de datos de diccionario usando la función OrderedDict.fromkeys (iterable) , convierte cualquier iterable en un diccionario que tenga elementos como Clave en el mismo orden en que aparecieron en la array.
  2. Ahora itere a través del diccionario completo y las claves de impresión.
# Python program to print All Distinct
# Elements of a given integer array
  
from collections import OrderedDict
  
def printDistinct(input):
     # convert list into ordered dictionary
     ordDict = OrderedDict.fromkeys(input)
  
     # iterate through dictionary and get list of keys
     # list of keys will be resultant distinct elements 
     # in array
     result = [ key for (key, value) in ordDict.items() ]
  
     # concatenate list of elements with ', ' and print
     print (', '.join(map(str, result)))  
  
# Driver program
if __name__ == "__main__":
    input = [12, 10, 9, 45, 2, 10, 10, 45]
    printDistinct(input)

Producción:

12, 10, 9, 45, 2

Publicación traducida automáticamente

Artículo escrito por Shashank Mishra 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 *