Este artículo ofrece varios enfoques para resolver el problema de encontrar el N-ésimo número más pequeño en la lista de python mayor que un elemento específico K en la lista de python. Básicamente, esto proporciona todos los enfoques, desde ingenuos hasta ingeniosos, para que puedan usarse en la programación cuando sea necesario.
Método 1: método ingenuo +sort()
usando bucle, seguimos agregando elementos que son mayores que K y luego ordenamos la lista y encontramos el elemento N-ésimo mayor que K.
# Python 3 code to demonstrate # Nth smallest Greater than K # using naive method + sort() # Initializing list test_list = [1, 4, 7, 5, 10] # Initializing k k = 6 # Initializing N N = 2 # Printing original list print ("The original list is : " + str(test_list)) # Using naive method + sort() # Nth smallest Greater than K res = [] for i in test_list : if i > k : res.append(i) res.sort() # Printing result print ("The Nth minimum value greater than 6 is : " + str(res[N - 1]))
The original list is : [1, 4, 7, 5, 10] The Kth minimum value greater than 6 is : 10
Método 2: lambda + filter() + sort()
enfoque similar al método anterior, solo para filtrar los números en la lista mayores que k, en este enfoque se usa filter() en lugar de loop. Funciona de manera similar a la anterior después de eso.
# Python 3 code to demonstrate # Nth smallest Greater than K # using min() + sort() + lambda # Initializing list test_list = [1, 4, 7, 5, 10] # Initializing k k = 6 # Initializing N N = 2 # Printing original list print ("The original list is : " + str(test_list)) # Nth smallest Greater than K # using min() + sort() + lambda res = list(filter(lambda i: i > k, test_list)) res.sort() # Printing result print ("The Nth minimum value greater than 6 is : " + str(res[N - 1]))
The original list is : [1, 4, 7, 5, 10] The Kth minimum value greater than 6 is : 10
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA