Listas doblemente enlasadas
Gráficamente se suele representar así:
En la figura anterior, podemos observar que cada nodo está unido al anterior y siguiente pormedio de dos enlaces.
6.2 Implementación
import javax.swing.*;
class cls_Nodo
{
int dato;
cls_Nodo siguiente;
cls_Nodo anterior;
public cls_Nodo()
{anterior = siguiente = null;
}
}
class cls_Lista
{
cls_Nodo cabeza;
public cls_Lista()
{
cabeza = null;
}public void InsertarDato()
{
int num=0;
String lectura="";
cls_Nodo NuevoNodo;lectura=JOptionPane.showInputDialog(null,"Digite un número:");
num=Integer.parseInt(lectura);
NuevoNodo = new cls_Nodo();
NuevoNodo.dato=num;
NuevoNodo.siguiente =cabeza;//en lace la cabeza con nuevo nodo punto siguiente //punto cabeza
if (cabeza != null)
cabeza.anterior = NuevoNodo;
cabeza = NuevoNodo;}
public void EliminarDato()
{
cls_Nodo NodoActual;
cls_Nodo NodoAnterior;
NodoActual = cabeza;
NodoAnterior = null;
if(NodoActual != null )
{
if (cabeza == NodoActual)
{
cabeza = NodoActual.siguiente;
NodoActual.siguiente = null;
}else if(NodoActual.siguiente == null)
{
NodoAnterior.siguiente = null;
}
else
{
NodoAnterior.siguiente = NodoActual.siguiente;...
Regístrate para leer el documento completo.