Tecnología

Inicio

Cómo eliminar un nodo de Link Systems en Java

Las listas enlazadas son una estructura básica de datos utilizada para almacenar datos. Son perfectos para situaciones en las que se van a almacenar una cantidad desconocida de los datos: la lista simplemente permite al programador para asignar dinámicamente memoria al final de la lista y crear una "cadena" de los objetos que se conectan entre sí. La parte difícil viene cuando uno de estos nodos deben eliminarse desde algún lugar en medio de la lista sin la cadena de que se rompa. En tal caso, puede crear dos nodos a "punto" a elementos de la lista, que se arrastran por la lista hasta encontrar el nodo que desea eliminar y retirarlo, manteniendo la integridad de la estructura.

Instrucciones

1 Crear una función para eliminar el nodo. La función toma un solo número entero que representa el valor del nodo. Esta función asume el nodo "cabeza" es el principio, y cada nodo tiene una referencia "al lado", junto con un único valor entero:

pública removeNode void (int value) {

si (la cabeza == null) {
regreso;
}

trazador de nodo = new Nodo ();
Nodo tracer2 = new Nodo ();
trazador = tracer2 = cabeza;

mientras que (tracer.value! = || valor trazador! = null) {
tracer2 = trazador; // Tracer2 siempre sigue trazador
trazador = tracer.next;
}

}

2 Apuntar al nodo anterior al nodo que desea eliminar al nodo siguiente en el nodo que desea eliminar:

mientras que (tracer.value! = || valor trazador == null) {
trazador = tracer.next; // Después de un tiempo de bucle, trazador se referirá a corregir nodo o ningún nodo
}

if (! trazador = null) {

tracer2.next = tracer.next;
}

3 Eliminar el nodo:

if (! trazador = null) {

tracer2.next = tracer.next;
}

trazador = null;