12
Ing. Julio César Canelón Rangel Listas Doblemente Enlazadas

Listas Doblemente Enlazadas y Listas Circulares

Embed Size (px)

DESCRIPTION

Implementación en c++

Citation preview

Page 1: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

Listas Doblemente Enlazadas

Page 2: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

Listas Doblemente Enlazadastypedef struct l_doble

{

int numero;

struct l_doble *prox;

struct l_doble *ant;

} L_DOBLE;

L_DOBLE *p;

3 4 9 NULL

p

Estructuras dinámicas

NULL

Page 3: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

nue

NULL

Insertar un elemento en la lista

3 4 9 NULL

p

NULL

7

3 4 9 NULL

p

NULL

7

NULL

Page 4: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

nue

NULL

Insertar un elemento en la lista (al final)

3 4 9 NULL

p

NULL

10

10

NULL

3 4 9

p

NULLNULL

Page 5: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

nue

NULL

Insertar un elemento en la lista (al inicio)

3 4 9 NULL

p

NULL

10

10

NULL

3 4 9

p

NULL

NULL

Page 6: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

Eliminar un elemento de un nodo

3 9 12 NULL

3 9 12 NULL

3 12 9NULL

Se busca el nodo a borrar

Movemos los punteros

Liberamos memoria conFree() o delete

NULL

NULL

NULL

Page 7: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

Movimiento/búsqueda a través de la lista

3 9 10

p

11 12NULL

paux->ant->ant

paux->ant

paux

paux->prox

paux

NULL

Page 8: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

Listas Circulares

Page 9: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

Listas Circularestypedef struct l_circular

{

int numero;

struct l_circular *prox;

struct l_circular *ant;

} L_CIRCULAR;

L_DOBLE *p;

3 4 9

p

Estructuras dinámicas

Page 10: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

nue

NULL

Insertar un elemento en la lista

3 4 9

p

7

3 4 9

p

7

NULL

Page 11: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

nue

NULL

Insertar un elemento en la lista (al final)

10NULL

3 4 9

p

3 4 9

p

10

Page 12: Listas Doblemente Enlazadas y Listas Circulares

Ing. Julio César Canelón Rangel

nue

NULL

Insertar un elemento en la lista (al inicio)

1NULL

3 4 9

p

3 4 9

p

1