Métete en una lista enlazada y reconecta sus punteros 'next' hasta que la cadena forme el orden objetivo, sin dejar nodos huérfanos ni crear un bucle.
Los nodos reposan sobre un lienzo conectados por punteros 'next'. Reapúntalos para que recorrer la lista desde HEAD produzca el orden objetivo. Los nodos huérfanos se alejan flotando y se atenúan; un ciclo hace parpadear sus flechas en rojo. También hay un botón de Invertir de un clic para dar la vuelta a toda la cadena.
Pointer es un puzle práctico de listas enlazadas sobre punteros, nodos huérfanos y ciclos que hace visibles las estructuras de datos.
Nodos en un lienzo unidos por punteros al siguiente, que se reapuntan para producir un orden objetivo, es la lista enlazada, la estructura de datos que guarda el orden en las conexiones y no en las posiciones.
Los nodos huérfanos que se alejan y se desvanecen no son decoración. Un nodo al que no apunta nada es inalcanzable, y en un programa real es una fuga de memoria.
Hacer visible la inalcanzabilidad es la razón por la que esto funciona como enseñanza. Un puntero es difícil de aprender precisamente porque normalmente nada en pantalla muestra la diferencia entre un objeto que ha desaparecido y un objeto al que simplemente ya no puedes nombrar.
Pointer es un puzle práctico de listas enlazadas sobre punteros, nodos huérfanos y ciclos. Es un juego original y gratuito para el navegador, creado en casa para PlayPendium.