Академический Документы
Профессиональный Документы
Культура Документы
ESTRUCTURAS DE DATOS
Ing. Otto Ortz
Agenda
Examen corto clase anterior
Listas:
Preguntas
Qu es un tipo de dato?
Cules son los tipos de datos ms comunes?
Listas
Listas
Una lista es un contenedor secuencial en el que se
pueden
insertar
y
borrar
elementos
independientemente del tamao del contenedor.
Operaciones
Las operaciones bsicas de los diferentes tipos de
listas son las mismas slo que se realizan de formas
diferentes dependiendo de la naturaleza de cada una
de ellas.
Estas operaciones bsicas son:
Insertar
Eliminar
Editar
Consultar
Nodo
Para comprender de una mejor manera el
concepto de Listas Simples es necesario,
primeramente, conocer la estructura bsica de
un nodo. En general un nodo consta de dos
partes:
LISTA CIRCULAR
En las listas lineales simples o dobles siempre hay un primer nodo y
un ltimo nodo que tiene el campo de enlace a nulo. Esto, porque
se delimita el comienzo y el trmino de la misma. Una lista circular,
por su naturaleza cclica, no tiene ni principio ni fin. No obstante, es
til y recomendable establecer un nodo de referencia a partir del
cual se acceda a la lista y as poder conocer la posicin inicial y
acceder a sus operaciones insertar, borrar etc.
Una lista circularmente enlazada tiene el mismo tipo de nodos que
una lista simple enlazada. Esto es, cada nodo en una lista
circularmente enlazada tiene un apuntador siguiente y una
referencia a un elemento. Pero no hay una cabeza o cola en la lista
circularmente enlazada. En vez de tener que el apuntador del ltimo
nodo sea null, en una lista circularmente enlazada, este apunta de
regreso al primer nodo. Por lo tanto, no hay primer nodo o ltimo. Si
se recorren los nodos de una lista circularmente enlazada desde
cualquier nodo usando los apuntadores sig, se ciclar a travs de
los nodos.
LISTA CIRCULAR
An cuando una lista circularmente enlazada no tiene inicio o
terminacin, no obstante se necesita que algn nodo est marcado
como especial, el cual ser llamado el cursor. El nodo cursor
permite tener un lugar para iniciar si se requiere recorrer una lista
circularmente inversa. Y si se recuerda esta posicin inicial,
entonces tambin se puede saber cuando se haya terminado con
un recorrido en la lista circularmente enlazada, que es cuando se
regresa al nodo que fue el nodo cursor cuando se inicio.
LISTA CIRCULAR
Ejemplo de Insercin
LISTA CIRCULAR
Ejemplo de Eliminar