ELO 320 Estructura de Datos y Algoritmos
Primer Semestre 2001
Profesor: Agustín J. González
Ayudante: Lara Manqui
Horario clases: Miércoles 14:00 B221,   Viernes 14:00 B221
Horario de Oficina
Información de contacto:  Oficina: B-322           Fono: 654196
Lista de correo: lista_elo320 @ elo.utfsm.cl  (ver instrucciones de uso aquí)

Textos:
    Thomas H. Cormen, Charles e. Leiserson,  y Ronald L. Rivest, "Introducction to Algorithms",   McGraw-Hill, ISBN 0-07-013143-0.  1990
    Timothy Budd, "Data Structures in C++ using the Standard Template Library", 1998, Addison Wesley Publishing, ISBN 0-201-30879-7 (Ver en  biblioteca USM)
Otros textos de referencia:
    Brian W. Kernighan Y Dennis M. Ritchie, "El Lenguage de Programación C", Prentice Hall, ISBN 968-880-205-0 (Texto bueno para estudiar C)
    Alfred  V. Aho, John E. Hopcroft, Jeffey D. Hullman, "Data Structures and Algorithms", Addison Wesley (mi copia es del año 83)

Contenido
    Introducción
    Lenguaje de programación C, C++  ???
    Fundamentos Matemáticos requeridos para la evaluacion de algortihmos
         Crecimiento de funciones (insertion-sort),
         Análisis de Algoritmos (merge-sort)
   Algorithmos de ordenamiento:
        Definiciones: Conjunto, grafo, árbol.
        Heapsort,
        Quicksort,
        Ordenamiento en tiempo lineal , Mediana y estadisticas de orden.
    Estructuras de datos:
        Estructuras de datos elementales: Pilas,  colas,   Listas enlazadas, y Árboles
        Tablas hash
        Árboles de búsqueda binariaExtensiones a Estructuras de Datos Básicas, etc.
        Algoritmos Avaros (Greedy Algorithms)
        Algoritmos en Grafos: Algoritmos elementales,Minimum Spanning Tree (árbol de expasión de peso mínimo): Prim y Kruskal,Camino más corto desde una fuente
        Repaso para tercer Certamen

Evaluación:
    75 %    3 Certámenes (18 Abril, 23 Mayo, y 27 de Junio)
           Primer Certámen (18 Abril)   Solución
           Segundo Certámen (23 Mayo)    Solución
           Tercer Certámen (27 de Junio)    Solución
   10 %    Tareas analíticas
    TA 1: Crecimiento de funciones. Plazo 11 de abril en clases.
    TA 2: Algoritmos de Ordenamiento. Plazo 18 de abril antes del certamen.
    TA 3: Quicksort, Stacks, Colas, Listas, Árboles, Hashing. Plazo 23 de mayo antes del certamen
        Ejercicios para el 3 º Certamen
        Más Ejercicios para el 3º Certamen

   15 %    Tareas de programación: Procedimiento de entregaEvaluación
    TP 1: Familiarizandose con C. Plazo 3 de abril a las 12:00 (mediodía).
    TP 2: Ordenamiento en tiempo O(n logn) y tiempo lineal. Plazo 7 de Mayo 12:00 hrs. (mediodía)
    TP 3: Árbol de busqueda Binaria aumentado. Plazo Martes 19 de Junio a mediodía.

Mejores Soluciones a Tareas
    Tarea de Programación TP1:   Alvaro Lillo y Camilo Díaz Medina
    Tarea de Programación TP2 :  Christian Bravo y Alvaro Lillo
    Tarea de Programación TP3:   Carlos Zamora

Misceláneos
    Ejemplo de uso de gnuplot
    Manual GNU para make(versión html Local)
    Compilador C++ GNU