La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Estructuras de Datos Dinámicas: Listas Programación I Departamento de Informática Universidad Nacional de San Luis Argentina 2014.

Presentaciones similares


Presentación del tema: "Estructuras de Datos Dinámicas: Listas Programación I Departamento de Informática Universidad Nacional de San Luis Argentina 2014."— Transcripción de la presentación:

1 Estructuras de Datos Dinámicas: Listas Programación I Departamento de Informática Universidad Nacional de San Luis Argentina 2014

2 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 2 Repaso (1) Nociones Generales –Agrupación de valores que por razones lógicas, se quiere conservar ‘juntos’. –Cómo se incorpora un nuevo elemento a la estructura. –Cómo se elimina o cambia un elemento que ya está en la estructura. –Cómo se busca un elemento, que ya está en la estructura, ya sea para conocerlo o inspeccionarlo, para eliminarlo de la estructura o para buscarle un lugar a uno nuevo.

3 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 3 Repaso (2) Estos tres últimos aspectos tienen que ver con las operaciones que pueden hacerse sobre la estructura de datos: Poner, Sacar, Inspeccionar. Orden, con respecto a las operaciones: Cronológico, No Cronológico. –Cómo se guardan los elementos en la estructura, es decir en qué orden se encuentran unos con respecto a los otros. Deben tener algún orden o estructura.

4 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 4 Repaso (3) Cuántos elementos se pueden guardar, capacidad de almacenamiento de la estructura: Estática / Dinámica. Identificar o seleccionar los elementos de la estructura: sin ambigüedad. Selector de la estructura, Unívoco. Explícito / Implícito. Tipo de los datos de los elementos de la estructura. A este tipo de dato le llamaremos tipo de dato base de la estructura. Simples / Compuestos. Homogéneo / Heterogéneo.

5 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 5 Estructuras de Datos Dinámicas: Listas (1) Capacidad: dinámica, crece y disminuye con las inserciones y supresiones Orden: No tiene orden cronológico de inserción o supresión. Secuencia. –unidireccional, 1º  último

6 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 6 Estructuras de Datos Dinámicas: Listas (2) Elementos de una lista unidireccional o secuencia, llamados nodos, constan de dos partes: Variable de Información Propiamente Dicha (VIPD) puntero al elemento (nodo) siguiente en la lista. último elemento, el puntero no apunta a un elemento y se dice que su valor es nil

7 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 7 Estructuras de Datos Dinámicas: Listas (3) Operaciones –Inserción –Supresión –Copia –Predicados: isEmpty, isFull.

8 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 8 Estructuras de Datos Dinámicas: Listas (4) Selector de la lista: implícito  cursor Operaciones sobre el cursor de la lista –Ir al primero: reset –Avanzar: forwards –Predicado: Fuera de la estructura (cursor = nil): isOos

9 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 9 Estructuras de Datos Dinámicas: Listas: Representación gráfica (4) Elemento i nil Cursor A vipd Puntero al siguiente Acceso a la lista

10 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 10 Cursor insert con lista vacía –isEmpty = true  isOos = true –isEmpty = false  isOos = false Z

11 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 11 Cursor insert con lista NO vacía –isEmpty = false  isOos = false G i i P G i + 1

12 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 12 Cursor insert con lista NO vacía –isEmpty = false  isOos = true –isEmpty = false  isOos = false 7 7 4

13 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 13 Cursor suppress con lista NO vacía –isEmpty = false  isOos = false i Y T i + 1 i T

14 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 14 Cursor suppress con lista NO vacía –isEmpty = false  isOos = false –isEmpty = false  isOos = true S D n n - 1 S n - 1

15 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 15 Cursor suppress con lista NO vacía –isEmpty = false  isOos = false –isEmpty = true  isOos = true R

16 #include “list_of_int.h”... /**** Imprime lista de enteros ****/ void printListaInt (list_of_int x) { reset(&x); while (!isOos(x)) { printf("%d ", copy(x)); forwards(&x); } printf("\n"); } /* fin de printListaInt */ Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas y TDA 16 Tipo de Datos Abstracto (TDA) (1) Ejemplo de uso (1)

17 #include “list_of_char.h”... /* ***** Buscar en lista de char ***** */ void buscaListaChar(list_of_char x, char y) { reset(&x); while (!isOos(x) && copy(x) != y) { forwards(&x); } if (!isOos(x)) printf(“%c esta en la lista\n”, y); else printf(“%c NO esta en la lista\n“, y); } /* fin de buscaListaChar */ Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas y TDA 17 Tipo de Datos Abstracto (TDA) (2) Ejemplo de uso (2)

18 #include “list_of_int.h”... /* ****** Copiar lista de int ****** */ void copiaListaInt (lista_of_int *x, lista_of_int y) { reset(&y); while (!isOos(y)) { insert(x, copy(y)); forwards(&y); } } /* fin de copiaListaInt */ Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas y TDA 18 Tipo de Datos Abstracto (TDA) (3) Ejemplo de uso (3)

19 Departamento de Unformática - UNSLProgramación I - Estrucutras Dinámicas 19 Fin … por suerte... ¿no? ;-)


Descargar ppt "Estructuras de Datos Dinámicas: Listas Programación I Departamento de Informática Universidad Nacional de San Luis Argentina 2014."

Presentaciones similares


Anuncios Google