Está en la página 1de 4

Instituto Politcnico Nacional

Escuela Superior de Computo

Alumno: Castro Maya Jess Christopher

Listas doblemente
enlazadas
Una lista doblemente ligada es una coleccin de nodos, en la cual cada nodo tiene dos
punteros, uno de ellos apuntando a su predecesor (LIGAIZQ) y otro a su sucesor
(LIGADER). Por medio de estos punteros se podr avanzar o retroceder a travs de la
lista, segn se tomen decisiones de uno u otro puntero.

Operaciones con listas doblemente ligadas

Recorrido de la lista

Insercin de un elemento

Borrado de un elemento

Recorrido de la lista

Al tener doble liga, las listas pueden recorrerse tanto del inicio al final (toman las
ligas derechas), como en sentido inverso (tomando las ligas del final). Cualquiera
que sea el sentido del recorrido, el algoritmo es similar al que presenta para listas
simplemente ligadas. Se deja al lector su diseo.
Insercin de un elemento
La insercin de un elemento consiste en agregar un nuevo nodo a la lista y establecer los
punteros correspondientes. No se considerar el caso de lista vaca. La insercin puede llevarse
a cabo:

Al inicio de la lista.

Al final de la lista.

Antes/despus de un nodo dado como referencia.

La operacin de borrado de un nodo en una lista doblemente ligada, al igual que en el caso de
las listas simplemente ligadas, consiste en eliminar un elemento de la lista y restablecer las
ligas que correspondan. Pueden presentarse cuatro casos:

Eliminar el primer nodo

Eliminar el ultimo nodo

Eliminar el nodo con informacin X

Eliminar el nodo anterior/posterior al nodo con informacin X

Comenc creando el mtodo iniciarLista(String valor)el cual inicia la lista creando


un primer nodo cola cadena introducida en valor

Luego insertarAlPrincipio(String valor)-> inserta un valor al principio de la lista


translado los dems nodos a una posicin posterior se vale de un nodo q al cual se
le enva la nueva informacin del primer nodo y dejando el primer enlace anterior
null para poder insertar mas informacin por el lado izquierdo

El mtodo insertarAlFinal(String valor) inserta un valor al final de la lista valindose


de un nodo q al que se le enva la nueva informacin y dejando nulo el siguiente
enlace para poder poner ms nodos

insertarAntesDe(String valor, String referencia) inserta la cadena introducida en


valor antes del nodo de referencia

insertarDespuesDe(String valor, String referencia)inserta la cadena introducida en


valor despus del nodo de referencia

eliminarAlPrincipio() elimina el primer elemento de la lista

eliminarAlFinal() elmina el ltimo elemento de la lista


eliminarNodo(String cual) elimina el nodo indicado por cual

Aqu una demostracin del funcionamiento del programa

También podría gustarte