Este es el tercer curso de programación en la carrera de Ingeniería de Sistemas. Se enfatiza en estructuras de datos, que permitan organizar en memoria principal conjuntos de datos, de tal manera de manejarlos efectiva y eficientemente según el problema que se trate. Del mismo modo, en este curso se enseñan las técnicas básicas de diseño y análisis de algoritmos.

Para el curso se emplea la biblioteca Aleph. La versión fuente más reciente puede descargarse de aquí.


Últimas noticias


Evaluación

Las evaluaciones, con sus porcentajes sobre la nota definitiva entre paréntesis, son las siguientes:

  • Tres exámenes parciales (70%): se elimina la peor calificación
  • Evaluación general de laboratorio (15%)
  • Nota apreciativa (15%)

Programa

    1. Abstracción y programación: tipos dabstractos de datos, clases, herencia, polimorfismo, programación genérica
    2. Secuencias: arreglos, listas enlazadas, pilas, colas y recursión
    3. Análisis de algoritmos
      1. Notación O:
      2. Métodos de ordenamiento: selección, inserción, rápido (quicksort), mezcla (mergesort)
      3. Algoritmos dividir conquistar
    4. Árboles
      1. Definiciones generales: árbol, representaciones en memoria, árbol binario, recorridos, correspondencia entre árboles y árboles binarios.
      2. Algoritmos básicos
      3. Conceptos matemáticos
      4. Árboles binarios de búsqueda
      5. Árboles binarios con rango
      6. Heaps
      7. Treaps
      8. Árboles binarios de búsqueda aleatorizados
    5. Tablas Hash
      1. Conceptos generales
      2. Estrategias de manejo de colisiones
      3. Diseño de funciones hash
      4. Tablas hash lineales

Bibliografía

  • Tejiendo Algoritmos - Leandro Rabindranath Leon
  • Estructura de datos y algoritmos - Alfred V. Aho, John E. Hopcroft, Jefrey D. Ullman - Addison-Wesley. Iberoamericana: Sistemas Técnicos de Edición, 1988. ISBN 968-6048-19-7
  • Programming Pearls - Jon Bentley. Addison-Wesley Professional. ISBN-10: 0201657880

Todas las estructuras de datos y algoritmos enseñados en este curso están disponibles en la biblioteca Aleph.


Otros

  • Horarios: lunes y miércoles de 10 a 11:59 AM
  • Laboratorio: viernes de 2 - 4 PM
 
 

PR-3 A 2012