representar una entidad (abstraccin) a travs de sus caractersticas (datos o atributos) y sus operaciones o funciones (algoritmos que manipulan los datos). TDA = Datos + Algoritmos-Datos.
una estructura de datos, esto pasa a ser el mapa o plano con el cual se construir la estructura de datos y se definirn claramente las reglas en las que podr usarse el TDA. La especificacin lgica de un TDA consiste de los siguientes cuatro puntos:
datos.
Es el tipo de los datos que se guardar en la estructura. Ejemplo: nmeros enteros, caracteres, fechas, registros con los datos de un empleado, etctera.
elementos.
Existen cuatro tipos de organizacin para los datos en la estructura. Lineal: Si hay una relacin de uno a uno entre los elementos. Jerrquica: Si hay una relacin de uno a muchos entre los elementos. Red: Si hay una relacin de muchos a muchos entre los elementos. Sin relacin: Si no hay relaciones entre los elementos.
estructura.
Cada operacin que est relacionada con la estructura debe describirse como: Nombre de la operacin. Descripcin breve de su utilidad. Datos de entrada a la operacin. Datos que genera como salida la operacin. Precondicin: Condicin que deber cumplirse antes de utilizar la operacin para que se realice sin problemas. Poscondicin: Condicin en que queda el TDA despus de ejecutar la operacin.
Ejemplo:
Especificacin lgica delTDA: Cadena
Elementos: todos los caracteres alfabticos (letras maysculas y minsculas), caracteres numricos y caracteres especiales. Estructura: hay una relacin lineal entre los caracteres Dominio: existen entre O y 80 caracteres en cada valor del TDA CADENA. El dominio sern todas aquellas secuencias de caracteres que cumplan con las reglas.
Ejemplo:
Operaciones:
Borrainicio
Utilidad: Sirve para eliminar el primer carcter de una cadena. Entrada: Cadena S sobre la que se desea eliminar el primer carcter. Salida: El carcter ms a la izquierda de la cadena S y la cadena S modificada. Precondicin: La cantidad de caracteres es mayor que cero. Poscondicin: La cadena S tiene todos los caracteres, menos el primero.
10
Ejemplo:
Agregafinal
Utilidad: Sirve para agregar un carcter al final de una cadena. Entrada: Cadena S y el carcter L, que se aadir a la cadena S. Salida: Cadena S modificada. Precondicin: La cantidad de caracteres en S es menor que 80. Poscondicin: La cadena S tiene el carcter L que queda al extremo derecho de la cadena.
11
Ejemplo
Vaca Utilidad: Sirve para verificar si una cadena est vaca o no.
Entrada: Cadena S que se verificar. Salida: VERDADERO si la cadena S no tiene caracteres, FALSO en caso contrario. Precondicin: Ninguna Poscondicin: Ninguna (pues la cadena S no se modifica).
12
Ejemplo
Llena
Utilidad: Sirve para verificar si una cadena est llena o no. Entrada: .Cadena S que ser verificada. Salida: VERDADERO si la cadena S contiene ya 80 caracteres, FALSO en caso contrario Precondicin: Ninguna Poscondicin: Ninguna (pues la cadena S no se modifica).
13
Ejemplo
Invierte
Utilidad: Sirve para invertir el orden de los caracteres en una cadena. Entrada: Cadena S a la que se desea invertir el orden de los caracteres. Salida: Cadena S modificada. Precondicin: Ninguna Poscondicin: La secuencia de caracteres en la cadena S se invierte, de forma que el primer carcter toma el lugar del ltimo, el segundo el del penltimo y as sucesivamente.
14
niveles de trabajo:
El nivel lgico o abstracto se define la estructura de datos y las operaciones relacionadas con ella. La descripcin es independiente del lenguaje de programacin en el se usar la estructura.
15
16
17
18
como consecuencia se tiene una implementacin ms clara, documentada y es fcil darle mantenimiento. Adicionalmente, gracias a la independencia de datos y al ocultamiento de informacin se pueden crear paquetes como unidades de software reutilizable con lo que se obtienen estructuras de datos genricas.
19