¿Leer lista simplemente enlazada recursivamente?

He de leer una lista simplemente enlaza, en la cual me obligan a que solo la puedo recorrer una vez, hasta llegar al final y después mostrar el contenido de los nodos recursivamente.
Por ejemplo si lo que tengo en mi lista es:
a s d f g
Debería de llegar a la g, y empezar a mostrar recursivamente el contenido, es decir me debería de mostrar
g f d s a

1 Respuesta

Respuesta
1
No sé en qué lenguaje de programación lo harás, pero me huele a Java, o al menos orientado a objetos.
Lo que yo haría sería sacar el contenido de los nodos a un vector y después leerlo al revés.
Es decir:
Vector miVector = Vector () # ==> Constructor del objeto de la clase Vector.
while $NextNodo != null do
miVector.setContenido = $NextNodo.getContenido();
Done
for (int i = miVector.size(); i = 0 ; i --) {
system.out.println(miVector.getContenido($i);
Done
De esta forma estás sacando los datos de la lista simplemente enlazada a un vector que crece automáticamente cuando lo va necesitando y después, como del vector sí que conoces el tamaño, vas leyendo del último elemento al primero.
En cualquier caso, las listas doblemente enlazadas son tremendamente más útiles aunque conllevan la actualización del nodo anterior y posterior para que no pierdan coherencia...
Si necesitas más ayuda, me dices... si no, finaliza y puntúa la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas