60 likes | 208 Views
Ayudantia 1: TAD - Complejidad. Carlos Pulgar R. Mail: carlos.pulgar@alumnos.usm.cl Página Ayudantía: http ://capulgar.wordpress.com/. Parte 1: TDA. ¿Qué es un TDA?
E N D
Ayudantia 1: TAD - Complejidad Carlos Pulgar R. Mail: carlos.pulgar@alumnos.usm.cl Página Ayudantía: http://capulgar.wordpress.com/
Parte 1: TDA • ¿Qué es un TDA? • Es un tipo de dato definido por el programador que se puede manipular de un modo similar a los tipos de datos definidos por el lenguaje TDA = Representación + Operaciones (estruct. de datos) (métodos)
TDA • Especificación formal de un TDA: • Definición del tipo. Indicar: • Nombre del TDA y elemento base del mismo • Invariante de un TDA • Dominio de la estructura: conjunto de valores válidos del TDA • Ejemplo Definición de tipo en C++
TDA • Tipos de especificaciones formales de un TDA: • Axiomática: reglas de las operaciones • Semántica: se fundamenta el qué hace la operación • Después de esto, se describen las operaciones (diapos) • Sólo las operaciones pueden acceder al tipo de datos. • Ejemplo operación en C++:
Parte 2: Análisis de Algoritmo • Aspectos importantes: • Eficiencia: • Tiempo de ejecución • Uso de espacio de memoria • Facilidad de lectura, mantenimiento y rapidez para codificarlo • ¿De qué depende el tiempo de ejecución? • De la entrada del programa (su tamaño y características) • De la calidad del código generado por el compilador • De la rapidez de las instrucciones de máquina • De la complejidad
Quiz 1 • Determinar la complejidad de las siguientes funciones: