Expresión lambda en Python para reorganizar números positivos y negativos

Dada una array de números positivos y negativos, organícelos de manera que todos los enteros negativos aparezcan antes que todos los enteros positivos en la array. Se debe mantener el orden de aparición. 

Ejemplos:

Input :  arr[] = [12, 11, -13, -5, 6, -7, 5, -3, -6]
Output : arr[] = [-13, -5, -7, -3, -6, 12, 11, 6, 5]

Input :  arr[] = [-12, 11, 0, -5, 6, -7, 5, -3, -6]
Output : arr[] =  [-12, -5, -7, -3, -6, 11, 0, 6, 5]

Este problema tiene muchas soluciones, consulte el enlace Reorganizar números positivos y negativos , pero resolveremos este problema con una sola línea de código en python usando Lambda Expression

Implementación:

Python3

# Function to rearrange positive and negative elements
def Rearrange(arr):
 
    # First lambda expression returns list of negative numbers
    # in arr.
    # Second lambda expression returns list of positive numbers
    # in arr.
    return [x for x in arr if x < 0] + [x for x in arr if x >= 0]
 
# Driver function
if __name__ == "__main__":
    arr = [12, 11, -13, -5, 6, -7, 5, -3, -6]
    print (Rearrange(arr))
Producción

[-13, -5, -7, -3, -6, 12, 11, 6, 5]

Este artículo es una contribución de Shashank Mishra (Gullu) . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

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

Deja una respuesta

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