Dada una lista, realiza la eliminación de aquellos elementos cuya diferencia es menor que K de su elemento anterior.
Entrada : test_list = [3, 19, 5, 8, 10, 13], K = 4
Salida : [3, 8, 13, 19]
Explicación : 5 – 3 = 2, 2<4, por lo tanto, 5 se elimina, de manera similar , 10 – 8 es 2, menos que K.Entrada : test_list = [15, 7, 20], K = 4
Salida : [7, 15, 20]
Explicación : No se requiere eliminación.
Acercarse:Usando bucle y ordenado()
En esto, primero, la lista debe ordenarse y luego se realiza la eliminación de elementos que no tienen una distancia adecuada entre su elemento anterior y posterior.
Python3
# initializing list test_list = [3, 19, 4, 8, 10, 13] # printing original list print("The original list is : " + str(test_list)) # initializing K K = 4 # sorting list test_list = sorted(test_list) idx = 0 while idx < len(test_list) - 1: # checking for difference if test_list[idx] + K > test_list[idx + 1]: # deleting if K closer del test_list[idx + 1] else: idx += 1 # printing result print("Required List : " + str(test_list))
Producción:
La lista original es: [3, 19, 4, 8, 10, 13]
Lista requerida: [3, 8, 13, 19]
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA