La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Clasificación de los TDA

Presentaciones similares


Presentación del tema: "Clasificación de los TDA"— Transcripción de la presentación:

1 Clasificación de los TDA
simples: son aquellos que cambian su valor pero no su estructura (el espacio de almacenamiento es constante) contenedores: son aquellos que cambian su valor y estructura (son conjuntos o colecciones de elementos de número variable) Un contenedor es polimórfico si puede almacenar instancias de tipos de datos diferentes.

2 Contenedores secuenciales
Organizan los datos en orden lineal. A cada elemento del contenedor se le asocia la posición que ocupa en el mismo. Los principales contenedores secuenciales son : Vector dinámico (vector) Lista (list) Pila (stack) Cola (queue)

3 Contenedores asociativos
Permiten gestionar los datos mediante claves que los identifican posibilitando la recuperación eficiente a partir de las mismas. Los principales son: Conjunto (set) Bolsa (multiset) Diccionario (map)

4 Contenedores parametrizables:
Parametrizacion: técnica de programación para producir productos de programación de alta calidad. Un contenedor parametrizado puede almacenar cualquier tipo de elemento, y no sólo de un tipo en particular. Para que la cohesión entre el contenedor y su elemento contenido sea lo más baja posible, el ‘enlace’ entre ambos debe hacerse únicamente a través de las operaciones básicas del tipo base, o TDA elemental.

5 Utilización de referencias en la parametrización de contenedores:
El uso de referencias o punteros a los objetos almacenados, en lugar de copiar el elemento en el contenedor, aumenta las posibilidades de compartir código objeto De esta forma, el contenedor básicamente manipula los enlaces a los objetos. En C++ suele utilizarse el concepto de plantillas ‘template’.

6 Tipos de métodos u operaciones comunes de los contenedores
Examinadores: sirven para saber si el contenedor está vacío o lleno (Empty() y Full()).Nunca alteran el valor del contenedor. Enumeradores: para averiguar cuántos elementos están almacenados en el contenedor, o en alguna de sus (Count())

7 Operaciones comunes de los contenedores (continuación)
Posicionadores: permiten ‘moverse’ hasta una determinada posición del contenedor.(por ejemplo, First(), Last(), etc). Dentro de los posicionadores se pueden diferenciar: Recorredores: para examinar uno a uno los objetos del contenedor, y para moverse dentro del TDA. (Next(), Prev(), Father(), Child(), etc.). Localizadores: sirven para encontrar un elemento dentro del contenedor (Locate(), Find() ).

8 Operaciones comunes de los contenedores (continuación)
Accesadores o iteradores: guían el recorrido de la estructura dentro del TDA. Sirven para recorrer en un orden predefinido los elementos que están almacenados en un contenedor. Este orden debe ser especificado de forma precisa. Insertadores: permiten agregar un nuevo objeto al contenedor. Por lo general requieren que se indique dónde se realizará la inserción( Insert() suele ser un nombre genérico, para cada TDA en particular puede variar) Borradores: permiten eliminar objetos del contenedor(Delete()). Generalmente se indica en qué posición se realizará el borrado.

9 En el paradigma imperativo la ecuación fundamental es
Algoritmos + Datos = Programas Los programas se obtienen mediante algoritmos que operan sobre datos para obtener otros datos finales Esto supone una división entre algoritmo = parte del programa que lleva el control de ejecución, datos = parte de almacenamiento de información Pero Hay una fuerte relación entre la parte algorítmica y las estructuras de datos utilizadas Los algoritmos son diferentes cuando las estructuras de datos son distintas

10 Fin Clase-Contenedores.ppt


Descargar ppt "Clasificación de los TDA"

Presentaciones similares


Anuncios Google