Estructuras de datos

Solo disponible en BuenasTareas
  • Páginas : 9 (2201 palabras )
  • Descarga(s) : 0
  • Publicado : 27 de mayo de 2010
Leer documento completo
Vista previa del texto
Introducción
Abstracción de datos
La abstracción nos permite simplificar el análisis y resolución de un problema separando las características que son relevantes de aquellas que no lo son. La relevancia dependerá fuertemente del contexto. Un ejemplo típico de abstracción es una jerarquía de objetos determinada por sus características comunes. Por ejemplo:
|
Fig. 1.1 Jerarquía de objetos |Fig. 1.29 Jerarquía de clases
Una abstracción de datos (tipo de dato o tipo abstracto de dato) es un nuevo tipo de dato más un conjunto de operaciones que permiten manipular los objetos de dicho tipo. En esta definición juega un papel importante el uso de la palabra objeto en lugar de variable. La diferencia entre ambos conceptos se explicará más adelante.
La correcta utilización de los tiposabstractos de datos (TADs en lo sucesivo) en el diseño de programas da lugar a programas de gran modularidad y calidad:
* son más legibles,
* son más fáciles de mantener y
* son más fáciles de modificar.
La razón de tales ventajas está en la diferencia entre el antiguo concepto de tipo de dato (conjunto de valores) y el nuevo.
Si se considera el tipo de dato como unconjunto de valores, entonces todo lo que se necesita para implementarlo es elegir una representación de almacenamiento (o estructura de datos) para las variables del tipo, por tanto, si la representación cambia también deben modificarse todos los programas que usan el tipo de dato. Si por el contrario, se considera el tipo de dato como un conjunto de objetos junto con un conjunto de operaciones paramanipularlos implementadas en términos de la representación elegida, y si los programas que utilizan el tipo de dato sólo dependen de estas operaciones y no de la representación, entonces un cambio de representación sólo obliga a modificar las operaciones, no siendo necesario modificar los programas que utilizan el tipo de dato.

Estructura de datos
En programación, una estructura de datos esuna forma de organizar un conjunto de datos elementales con el objetivo de facilitar su manipulación. Un dato elemental es la mínima información que se tiene en un sistema.
Una estructura de datos define la organización e interrelación de éstos y un conjunto de operaciones que se pueden realizar sobre ellos. Las operaciones básicas son:
* Alta, adicionar un nuevo valor a la estructura.
*Baja, borrar un valor de la estructura.
* Búsqueda, encontrar un determinado valor en la estructura para realizar una operación con este valor, en forma SECUENCIAL o BINARIO (siempre y cuando los datos estén ordenados)...
Otras operaciones que se pueden realizar son:
* Ordenamiento, de los elementos pertenecientes a la estructura.
* Apareo, dadas dos estructuras originar una nuevaordenada y que contenga a las apareadas.
Cada estructura ofrece ventajas y desventajas en relación a la simplicidad y eficiencia para la realización de cada operación. De esta forma, la elección de la estructura de datos apropiada para cada problema depende de factores como la frecuencia y el orden en que se realiza cada operación sobre los datos.

Relación con la programación orientada aobjetos
Mediante la programación orientada a objetos (POO) se puede fácilmente implementar estructuras de datas, debido a que en la POO cada clase tiene datos y métodos con lo cual se puede implementar las operaciones básicas de las estructuras de datos.
Clasificación de estructuras de datos
Una estructura de datos es una clase de datos que se puede caracterizar por su organización y operacionesdefinidas sobre ella. Algunas veces a estas estructuras se les llama tipos de datos. En ellas encontramos las siguientes:
ESTRUCTURAS LÓGICAS DE DATOS:
En un programa, cada variable pertenece a alguna estructura de datos explícita o implícitamente definida, la cual determina el conjunto de operaciones validas para ella. Las estructuras de datos que se discuten aquí son estructuras de datos...
tracking img