Python – N-ésimo más pequeño Mayor que K

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]))
Producción :

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]))
Producción :

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

Deja una respuesta

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