Professional Documents
Culture Documents
Clase terica 4
Contenido
Listas simple y doblemente enlazadas
Lista enlazada
Una lista enlazada (o ligada) es una estructura de datos
que permite almacenar elementos pero, a diferencia de
los arreglos, no necesariamente en posiciones
consecutivas de memoria (ni siquiera deben estar en
orden).
Arreglo:
Lista enlazada:
Contenedor
Enlace
Lista enlazada
En una lista, cada elemento se encuentra contenido dentro
de un nodo el cual generalmente contiene, adems del
elemento, un apuntador o referencia a otro nodo (o a otros
dos).
Siendo as, la lista como tal no contiene mayor cosa,
generalmente solo la referencia a ciertos nodos de la lista
(normalmente primero y ltimo) y el tamao de la misma.
Dependiendo de si cada nodo apunta solamente al siguiente
en la lista diremos que esta es simplemente enlazada, o si
apunta tanto al siguiente como al anterior diremos que es
doblemente enlazada. La diferencia entre una y otra son las
operaciones que permiten (en una doblemente enlazada por
ejemplo se puede ir de atrs hacia adelante, mientras que en
la simple no)
Lista enlazada
Lista simplemente enlazada:
Lista
Nodo
Nodo
Nodo
first = 0x05
last = 0x10
size = 3
next = 0x07
next = 0x10
next = null
0x04
0x05
0x06
0x07
0x08
0x09
0x10
Nodo
Nodo
Nodo
first = 0x05
last = 0x10
size = 3
next = 0x07
prev = null
next = 0x10
prev = 0x05
next = null
prev = 0x07
0x04
0x05
0x06
0x07
0x08
0x09
0x10
Tabla resumen
Recapitulando la clase de hoy tenemos que:
Estructura
Lista
enlazada
Insercin
Indexacin
Bsqueda
Borrado
O(n)
O(n)
O(n)
O(n)
Excepto que
sea el
primero o el
ltimo, en
cuyo caso es
O(1)