Inverter sem reverse
Em muitos sistemas, você precisa processar dados na ordem inversa, como exibir logs do mais recente para o mais antigo ou reverter uma sequência de ações. Saber percorrer uma lista de trás para frente sem depender de funções prontas te dá controle total sobre o índice, útil em algoritmos personalizados ou quando a performance é crítica.
O PROBLEMA
Crie nova lista invertida sem usar reverse() ou [::-1].
EXEMPLO
Original: [1,2,3,4,5] Invertida: [5,4,3,2,1]
SOBRE O CONCEITO
Para inverter uma lista sem reverse() ou [::-1], usamos um laço for com range() decrescente. O segredo é começar do último índice (len(lista) - 1) e ir até -1 (exclusivo) com passo -1: for i in range(len(lista)-1, -1, -1). Erro comum é usar range(len(lista), -1, -1), o que começa fora dos limites e gera IndexError, ou range(len(lista)-1, 0, -1), que pula o índice 0. O método correto garante que todos os elementos sejam acessados em ordem reversa, permitindo usar append para construir a nova lista.
RESOLUÇÃO