Estructuras de Datos y Algoritmos

Materia:    Programación.

 

Créditos:    16.

 

Objetivo de la Asignatura

El objetivo de la asignatura es aprender a realizar programas de tamaño medio, partiendo de diseños apropiados, aplicando los conceptos de módulo de programa y tipo abstracto de dato.
El estudiante aprenderá a trabajar con abstracciones de datos básicas (listas generales, colas, pilas, árboles binarios).
Se introducirá al estudiante al análisis de algoritmos.
El estudiante logrará un dominio completo del lenguaje C/C++ (sin manejo de clases y objetos), para lo cual se lo incentivará a investigar y utilizar funciones de biblioteca (cadenas, entrada/salida, archivos, etc).

  

Metodología de enseñanza

Se dictarán 8 horas semanales de clase, incluyendo presentaciones teóricas, realización de ejercicios prácticos y trabajo en máquina. Además, cada alumno deberá dedicar un promedio de 8 horas semanales para estudio y realización de trabajos de laboratorio propuestos por el docente.

 

 

Temario

    1. Tipos Abstractos de Datos. Diseño de Programas, Módulos de Programa. Implementación de Módulos en Lenguaje C/C++.
    2. Introducción al Análisis de Algoritmos: Eficiencia en Tiempo de Ejecución y Espacio de Almacenamiento. Algoritmos de Búsqueda y Ordenación.
    3. Concepto de Recurrencia.
    4. Implementación de Tipos de Datos Recurrentes: Concepto y Manipulación de Punteros.
    5. Implementación de Listas.
    6. Implementación de Funciones Recurrentes.
    7. Diseño de Programas Mediante Abstracción de Datos. Refinamiento de Funciones y Datos. Casos de Estudio.
    8. Abstracciones de Datos Básicas:

Bibliografía

 

Previaturas

 

Formas de evaluación

Los estudiantes serán evaluados mediante entregas de trabajos de laboratorio y dos parciales.
Laboratorio: Los trabajos propuestos serán de entrega obligatoria. No se les asignará puntaje, solamente se evaluará si se aprueban o no.
Parciales: El primero se realizará luego de la séptima semana de clases, y el segundo tendrá lugar luego de finalizado el curso.

De los resultados obtenidos en los parciales surgirán tres posibilidades:

Sumando los resultados de los parciales se podrá obtener un máximo de 100 puntos.
La exoneración del examen final se logra acumulando como mínimo 60 puntos entre los dos parciales.
La suficiencia se logra acumulando como mínimo 25 puntos entre ambos parciales.
Quien no llegue a 25 puntos obtenidos entre ambos parciales deberá recursar la asignatura.