Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Problema
Utilizando seudocódigo y Operaciones del TDA Lista, escriba un programa que imprima
(liste) los elementos de una Lista.
Solución:
Solución:
Funcion Invierte(L:LISTA) : LISTA //Una función retorna un valor en este caso una LISTA
P: PILA
mientras (no L.VACIA()) haga
P.METE(L.RECUPERA(L.PRIMERO()))
L.SUPRIME(L.PRIMERO())
fin mientras
mientras (no P.VACIA()) haga
L.INSERTA(P.TOPE,L.FIN())
P.SACA()
fin mientras
retornar L
fin Procedimiento Invierte
El primer ciclo se ejecutará siempre y cuando la lista L no este vacía, en este ciclo se va
agregando el primer elemento de la lista a la pila, luego el primer elemento se elimina
de la Lista L (el segundo elemento pasa a ser ahora el primero y así sucesivamente). Al
concluir este ciclo la lista L estará vacía y la pila P contendrá todos los elementos de la
lista, la pila P tendrá almacenado en su TOPE el ultimo elemento de la lista L.
Al finalizar el segundo ciclo la Pila P estará vacía y la Lista L tendrá nuevamente todos
sus elementos, pero en orden inverso.