ELIMINAR UN NODO ESPECÍFICO
En este último articulo veremos como borrar el nodo que queramos. el procedimiento es igual a los anteriores de nodos.
Aquí se crea un if que evalúa que el método estarVacia (evalúa si la lista está vacía) no sea true.
Luego una doble condición si inicio == fin y elemento == inicio.dato (puntero inicio y dato de la clase Nodo). Entonces inicio sera igual a fin y este igual a null.
Si no entra alli, entonces elemento == inicio.dato
e inicio pasará al siguiente nodo.
Si no se cumple, el nodo anterior pasará a ser igual a inicio y temporal al siguiente.
Luego crear un while donde evalúe si temporal es diferente de null y el dato que contiene temporal es diferente de elemento. Le asigna a anterior el siguiente y a temporal el siguiente. Entonces va avanzando.
Por último evaluar con un if si temporal es diferente de null, se le asigna al anterior.siguiente el temporal.siguiente.
Y si temporal == fin, fin se le asigna a anterior.
Agregar la opción al InputDialog que tenemos en la clase main.
En la variable el escribimos Integer.parseInt y dentro un JOptionPane, pero esta vez no será MessageDialog, si no InputDialog, por lo tanto tendremos que ingresar valores nosotros.
Ingresamos los datos,y los mostramos.
Aquí tenemos tres datos de ejemplo.
Ejecutamos el case 6 del switch.
Se despliega una ventana pidiendo que ingresemos el elemento a borrar.
Luego se despliega el mensaje que eliminamos un elemento y lo indica.
Y este es el resultado.







Comentarios
Publicar un comentario