6
Ing. Julio César Canelón Rangel tualizado: Abril 2007 Listas Simples Enlazadas

Listas Simples Enlazadas

Embed Size (px)

Citation preview

Page 1: Listas Simples Enlazadas

Ing. Julio César Canelón RangelActualizado: Abril 2007

Listas Simples Enlazadas

Page 2: Listas Simples Enlazadas

Ing. Julio César Canelón RangelActualizado: Abril 2007

Listas Simples Enlazadas

typedef struct l_simple

{

int numero;

struct l_simple *prox;

} L_SIMPLE;

L_SIMPLE *p;

3 4 9 NULL

p

Estructuras dinámicas

Page 3: Listas Simples Enlazadas

Ing. Julio César Canelón RangelActualizado: Abril 2007

3 9 12

p

NULL

nue

13 NULL

3 9 12 NULL

Queda de la siguiente manera:

Insertar un elemento en la lista

L_SIMPLE *nue;nue = (L_SIMPLE *) malloc (sizeof(L_SIMPLE);

O también:nue = new LSIMPLE;

13 NULL

Page 4: Listas Simples Enlazadas

Ing. Julio César Canelón RangelActualizado: Abril 2007

Eliminar un elemento de un nodo

3 9 12

ptr

NULL

3 9 12

ptr

NULL

3 12 12

ptr

NULL

Se busca el nodo a borrar

Movemos el puntero

Liberamos memoria conFree() o delete

Page 5: Listas Simples Enlazadas

Ing. Julio César Canelón RangelActualizado: Abril 2007

Insertar un elemento ordenadamente

3 9 12 NULL

p

10 NULLnue

3 9 12 NULL

10nue

p

Page 6: Listas Simples Enlazadas

Ing. Julio César Canelón RangelActualizado: Abril 2007

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

3 9 10

ptr

11 12 NULL

p->prox

p->prox->prox

p->prox->prox->prox

p->prox->prox->prox->prox

Contar los elementos de unaLista Enlazada

L_SIMPLE *aux = p;int cont = 0;while (aux != NULL){ aux = aux->sig; cont++;}