Una lista enlazada es una colección o secuencia de elementos dispuestos uno detrás de otro, en la que cada elemento se conecta al siguiente elemento por un “enlace” o “referencia”. La idea básica consiste en construir una lista cuyos elementos, llamados nodos, se componen de dos partes (campos): la primera parte contiene la información y es, por consiguiente, un valor de un tipo genérico (denominado Dato, TipoElemento, Info , etc.), y la segunda parte es una referencia (denominado enlace o sgte ) que apunta (enlaza) al siguiente elemento de la lista.
Estructuras de datos en Java - Luis Joyanes Aguilar e Ignacio Zahonero Martínez.
## Métodos implementados
- Insertar al principio de la lista
public void insertarCabezaLista(Object dato) { }
- Insertar elemento después de otro en la lista
public void insertarLista(Nodo anterior, Object dato) { }
- Eliminar elemento de la lista
public void eliminar(Object dato) { }
- Buscar un elemento en la lista
public Nodo buscarLista(Object dato) { }
- Buscar un elemento en la lista mediante su posición
public Nodo buscarPosicion(int posicion) { }
- Eliminar un elemento de la lista
public void eliminar(Object dato) { }
- Visualizar contenido de la lista
public void visualizar() { }
- Visualizar contenido de la lista mediante iterador
public void visualizarIterador() { }
- Obtener el primer nodo de la lista
public Nodo leerPrimero() { }
- Comprobar si la lista está vacía
public boolean esVacia() { }
Extiende de Lista, por lo que hereda todos sus métodos además de:
- Insertar elemento ordenado (entero)
public void insertaOrden(int dato) { }
- Inicializar iterador con una lista
public ListaIterador(Lista list) { }
- Leer el siguiente elemento de la lista
public Object siguiente() { }
- Reiniciar iterador a posición inicial
public void reiniciar() { }
NOTA: El código recogido en este repositorio está basado en el libro "Estructuras de datos en Java", de Luis Joyanes Aguilar e Ignacio Zahonero Martínez. Todos los derechos van a sus respectivos dueños.
Espero que este repositorio te sirva de ayuda. A pesar de estar basado en Java, el código puede ser adaptado a otros lenguajes. Cualquier contribución es bienvenida.
Contacto: [email protected].