You are here: TWiki> AED Web>WebHome (2016-10-24, CimecUser)

Universidad Nacional del Litoral
Facultad de Ingeniería y Ciencias Hídricas

Algoritmos y Estructuras de Datos

Ir a la Página de Notas

Novedades feed

[New]

Indice

Cátedra e info de la materia. Contacto

  • Carreras: Ingeniería Informática, Analista en Informática Aplicada
  • Extension: Cuatrimestral
  • Carga horaria: 90 hs de clases (30 hs teoría / 60 hs práctica)

  • Docentes:
    • Mario Storti, (mario.storti at gmail.com)
    • Juan Marcelo Giménez (jmarcelogimenez at gmail.com)
    • Pablo Novara (zaskar_84 at yahoo.com.ar)
    • Cristián Bottazzi (cristian.bottazzi at gmail.com)
    • José Olivera (joseolivera123 at gmail.com)

Programa Analítico

Está accesible la planificación de la materia.

  1. Diseño y análisis de algoritmos. De los problemas a los programas. Tipos de datos abstractos (TDA). Tipos de datos, estructura de datos y tipos de datos abstractos.
  2. Tipos de datos abstractos fundamentales. El tipo de dato abstracto ``Lista''. Realización de listas. Pilas. Colas. Correspondencias.
  3. Arboles. Terminología fundamental. El TDA ``árbol''. Realización de árboles. Arboles binarios.
  4. Operaciones básicas con conjuntos. Introducción a los conjuntos (sets). Un TDA con UNION, INTERSECCION y DIFERENCIA. Realización de conjuntos mediante vectores de bits. Realización de conjuntos mediante listas enlazadas. El diccionario. Realizaciones sencillas de diccionarios. La estructura de datos tabla de dispersión. Estimación de la eficiencia de las funciones de dispersión. Realización del TDA CORRESPONDENCIA. Colas de prioridad. Realización de colas de prioridad. Algunas estructuras complejas de conjuntos.
  5. Métodos Avanzados de Representación de Conjuntos. Arboles binarios de búsqueda. Tries.
  6. Clasificación. El modelo de clasificación interna. Algunos esquemas simples de clasificación. Clasificación rápida (Quicksort). Clasificación por montículos (Heapsort).
  7. Técnicas de análisis de algoritmos. Eficiencia de los algoritmos. Tiempo de ejecución de un programa. Cálculo del tiempo de ejecución de un programa. Buenas prácticas de programación. Análisis de programas recursivos.
  8. Técnicas de diseño de algoritmos. Algoritmos dividir para vencer. Programación dinámica. Algoritmos ávidos (greedy). Método de retroceso (Backtracking). Algoritmos de búsqueda local.

Bibliografía

  • Material generado por la catedra:
  • Aho, Hopcroft y Ullman, Estructura de Datos Y Algoritmos, Ed. Addison-Wesley (1988).
  • Tenenbaum y Augenstein, Estructura de Datos en Pascal, Ed. Prentice-Hall (1983).
  • Weiss, Estructuras de Datos y Algoritmos, Ed. Addison Wesley (1995).
  • Wirth, Algoritmos y Estructura de Datos, Ed. Prentice Hall (1987).

Videos de las clases de teoría

Durante el dictado 2016 las clases de teoría están siendo grabadas en formato de screencast. Los videos se pueden ver aquí Videos de las clases de teoría o directamente en la siguiente Youtube playlist

Modalidad de Dictado

Se dictarán clases:

  • Teóricas (2.5 hs semanales)
  • Prácticas (4.5 hs semanales)
  • De consulta (2hs semanales)

Horarios

Los horarios se pueden ver en el Calendario Google de AED:

  • Teoría: [A cargo de Mario Storti]
    • Unico turno: Martes de 14:00hs a 16:00hs (Aula 2, Planta baja FICH)
  • Prácticas: [A cargo de Juan M. Giménez y Pablo Novara]
    • Martes de 16:15hs a 18:15hs (Aula 2, Planta baja FICH)
    • Jueves de 16:00hs a 18:30hs (Aula 6, Piso 3, Edificio "Aulario Común" (aka "El Cubo" ))
  • Consultas:
    • Laboratorio: Jueves 14:00-16:00hs en LAB3 FICH. (A cargo de José Olivera y Cristian Bottazzi)
    • Teoría y práctica: Miércoles 14:00-16:00. (A cargo de Juan Giménez, Mario Storti (CIMEC) y Pablo Novara (Aula CIMNE)). (ver plano de ubicación CIMEC)
    • En ambos casos: COORDINAR con los docentes.

Evaluación

La evaluación se realiza mediante dos exámenes parciales y tres trabajos prácticos de laboratorio (TPL). Los parciales constan de 6 secciones: CLAS1, PREG1, OPER1, CLAS2, OPER2, PREG2. La regularidad se logra si

  • DP<=2 && DTPL==0 && PP>=40

donde

  • DP es la cantidad de secciones de parciales adeudadas
  • DTPL es la cantidad de TPLs adeudados
  • PP es el promedio pesado de los parciales y TPL.

Recuerden que para aprobar cada sección tienen que tener un porcentaje mínimo de 60% en teoría, y 50% en las restantes.

Lograrán promoción directa cuando

  • DP==0 && DTPL==0 && PP>=70

Se calcula una Nota Final igual al promedio pesado PP de las secciones.

Se realizará un Examen Recuperatorio. Las reglas del mismo se pueden consultar aquí.

Aquellos alumnos que no logren promoción directa, deberán rendir un examen final. Los exámenes finales incluyen todos los temas dados en la materia y constan de una evaluación de teoría, que puede ser oral, y una parte escrita que incluye programación, operativos, y clases.

Cronograma Tentativo

El cronograma se puede ver en el Calendario Google de AED

  • Inicio de Clases: Semana 1 (Martes 2016-08-16)
  • TPL1 (Trab Práctico de Laboratorio 1): Semana 4 (Jueves 2016-09-08)
  • Parcial 1: Semana 8 (Jueves 2016-10-06)
  • TPL2: Semana 9 (Jueves 2016-10-13)
  • TPL3: Semana 12 (Jueves 2016-11-03)
  • Recup TPLs: Semana 13 (Jueves 2016-11-10)
  • Parcial 2: Semana 14 (Jueves 2016-11-17)
  • Recuperatorio de los dos parciales : Semana 15 (Jueves 2016-11-24)

Guías de Trabajos Prácticos

Aquí se puede bajar las guías en formato PDF. Conforme avancen las clases se irán incorporando nuevas guías.

Exámenes parciales y finales tomados previamente

(Previo a 2002 en formato MS-Word, posteriores en formato PDF)
(A partir de 2013 incluye los ZIP con el material de los TPL (no encriptados))

Migración de Pascal a C++

El lenguaje de programación que se usa desde el cursado 2004 es C++. (Anteriormente se daba en Pascal)

  • La bibliografía principal a utilizar serán los apuntes de la cátedra (disponible en esta página) y el libro de Aho.
  • Los exámenes finales se empezaron a tomar en C++ a partir de la primera fecha de julio 2004. Hasta entonces se tomaba en Pascal.
  • Todos los ejemplos se escribirán en C++.

Enlaces de interés

Repositorio de archivos

En el repositorio de archivos se pueden encontrar ejercicios resueltos de las guías o tomados en exámenes parciales y finales previos. (El viejo repositorio con programas en Pascal se accede aqui )

Calendario Google de AED

Los horarios de clases y evaluaciones están sumarizados en este Calendario Google de AED. El ID para agregar este calendario a su propio Calendario Google personal es q86qum02lrvf515csqtqquh5hs@group.calendar.google.com (Ver instrucciones).

Torneo de Programación

La cátedra organiza un Torneo de Programación

Topic attachments
I Attachment Action Size Date Who Comment
pdfpdf aed-programa.pdf manage 86.3 K 2015-07-27 - 17:48 MarioStorti  
pdfpdf gtp1_aed.pdf manage 139.6 K 2016-08-16 - 14:11 CimecUser  
pdfpdf gtp2.pdf manage 150.6 K 2016-08-23 - 19:35 CimecUser  
pdfpdf gtp3_aed.pdf manage 160.6 K 2016-10-18 - 19:46 CimecUser  
pdfpdf gtp4_aed.pdf manage 202.1 K 2016-10-24 - 22:00 CimecUser Guía de TPs nro 4 - 2016
elsehpp ver1.hpp manage 3.2 K 2015-08-12 - 17:18 MarioStorti  
Topic revision: r239 - 2016-10-24 - 22:06:12 - CimecUser
 

TWIKI.NET
This site is powered by the TWiki collaboration platformCopyright � by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback