Solución al Ejercicio #14

Esta es la solución al Ejercicio #14: Por el siguiente mayor.

Ya es costumbre en este bloque de ejercicios (y en la programación en general) que un problema se pueda resolver de varias formas.

A continuación, te muestro algunas de las soluciones más pythónicas al problema planteado.

Solución 1

def siguiente_mayor(lst):
    asc = sorted(lst) + [-1]
    return [asc[asc.index(i) + 1] for i in lst]

Solución 2

def siguiente_mayor(lst):
    srt_lst = sorted(lst)

    for i in range(len(lst)):
        if lst[i] == max(lst):
            lst[i] = -1
        else:
            lst[i] = srt_lst[srt_lst.index(lst[i]) + 1]

    return lst

Solución 3

def siguiente_mayor(lst):
    s = sorted(lst)
    ind = lst.index(max(lst))
    for i in range(len(lst)):
        if lst[i] != max(lst):
            lst[i] = s[s.index(lst[i]) + 1]
    lst[ind] = -1
    return lst

¿Quieres ser expert@ en Python? Recibe trucos Python y las últimas novedades del blog

¡Eyyy! Esto también te puede interesar 👇

* Te informo de que los datos de carácter personal que proporciones al comentar serán tratados por Juan José Lozano Gómez como responsable de esta web. La Finalidad es moderar los comentarios. La Legitimación es gracias a tu consentimiento. Destinatarios: tus datos se encuentran alojados en Disqus (disqus.com), mi sistema de comentarios, que está acogido al acuerdo de seguridad EU-US Privacy. Podrás ejercer Tus Derechos de Acceso, Rectificación, Limitación o Suprimir tus datos enviando un email a juanjo@j2logo.com. Encontrarás más información en la POLÍTICA DE PRIVACIDAD.

Sobre j2logo

j2logo profile

Quiero ayudarte a que seas mejor programador/a, pero no uno cualquiera, sino uno de los top.

¿Quieres ser expert@ en Python? 🐍

❤️ He ayudado a miles de programadores/as como tú a ser mejores Pythonistas

📩 Recibe de vez en cuando trucos y scripts Python y las últimas novedades del blog

* Al enviar el formulario confirmas que aceptas la POLITICA DE PRIVACIDAD

¿Quieres ser expert@ en PYTHON?

j2logo-pythonistas

❤️ He ayudado a miles de programadores/as como tú

📩 Recibe trucos, scripts y las novedades del blog

¿Quieres dominar Python?

Python, Guía para ser un Pythonista

El curso con el que aprender el lenguaje desde cero. Con mi soporte y ayuda.

OFERTA BLACK FRIDAY

35% de descuento