Encabezado Facultad de Ciencias
Presentación

Ciencias de la Computación (plan 2013) 2024-2

Segundo Semestre, Estructuras de Datos

Grupo 7041, 50 lugares. 48 alumnos.
Profesor Carlos Zerón Martínez lu mi vi 16 a 17 P213
Ayudante Itzel Azucena Delgado Díaz ma ju 16 a 17 P213
Ayudante Dicter Tadeo García Rosas ma ju 16 a 17
Ayud. Lab. José Antonio Vilchis Salazar ma ju 17 a 19
Ayud. Lab. Karla Adriana Esquivel Guzmán ma ju 17 a 19 306 (Yelizcalli)
 

Contacto

Profesor: M. en C. Carlos Zerón Martínez zeronmc@gmail.com

Ayudante: Itzel Azucena Delgado Díaz itzeldelgado314@ciencias.unam.mx

Laboratorista: José Antonio Vilchis Salazar grand_paladin@ciencias.unam.mx


La presentación se detallará el 29 de Enero de 2024 en el aula asignada a las 16:00 hrs.

Modalidad del curso


El curso se impartirá en la modalidad presencial y en la plataforma Google Classroom se llevará el control de trabajos por desarrollar, así como material complementario al impartido en clases y dudas no resueltas durante éstas. La invitación a Classroom se enviará únicamente a las personas que se encuentren inscritas en el grupo, a su correo @ciencias, o en su defecto, @gmail. En línea se subirán presentaciones, enlaces a páginas en la Web y lecturas, además de que se podrán preguntar también dudas por medio de Classroom.

Objetivos generales

Proporcionar habilidades y conocimientos con respecto a:

  • La abstracción de datos para resolver problemas.
  • El panorama de las estructuras de datos más usuales, características, operaciones soportadas y maneras de instrumentarlas en un lenguaje de programación orientado a objetos en particular (Java).
  • Las técnicas de análisis de eficiencia en estructuras de datos y algoritmos que las utilizan.
  • Aplicaciones de estructuras de datos en el contexto del desarrollo de sistemas de software.

Contenido

  1. Fundamentos
    • Diseño Orientado a objetos: Repaso y conceptos complementarios
    • Diseño Orientado a objetos: Metas y principios
    • Tipo de dato abstracto y estructura de datos
    • Introducción al análisis de algoritmos: eficiencia teórica y experimental
  2. Recursión
    • Algoritmos recursivos
    • Eficiencia en la recursión
  3. Listas
    • Implementaciones basadas en arreglos
    • Listas con referencia simple (listas ligadas)
    • Listas doblemente ligadas
    • Aplicaciones
  4. Pilas y Colas
    • Implementaciones basadas en arreglos
    • Implementaciones basadas en listas ligadas
    • Aplicaciones
  5. Árboles
    • Árboles generales: definiciones y algoritmos fundamentales
    • Árboles binarios
    • Árboles binarios de búsqueda
    • Arboles binarios completos. Heaps
    • Aplicaciones
  6. Colas de prioridades
    • Implementaciones basadas en listas
    • Implementación basada en un heap
    • Aplicaciones
  7. Mapas
    • Implementación con tablas de dispersión
    • Mapas ordenados
    • Aplicaciones
    • Conjuntos, multiconjuntos y multimapas (diccionarios)
  8. Algoritmos de Ordenamiento
    • Ordenamiento por Selección
    • Ordenamiento por Inserción
    • Ordenamiento por Mezcla
    • Ordenamiento Rápido
  9. Gráficas
    • Gráficas dirigidas y no dirigidas. Repaso y conceptos complementarios.
    • Implementación basada en matriz de adyacencias
    • Implementación basada en lista de adyacencias
    • Algoritmos fundamentales
    • Aplicaciones

Evaluación

  • Tareas 20%. Escribir fragmentos de código, ejecutar algoritmos y esquematizar operaciones de las estructuras de datos.
  • Exámenes 20%. Reconocer conceptos, analizar eficiencia y ejecutar algoritmos.
  • Prácticas 40%. Implementar estructuras de datos y aplicaciones sencillas.
  • Proyecto Final 20%. Implementar una aplicación que involucre varias estructuras de datos.

Lineamientos sobre la evaluación

  • Todas las entregas serán de forma individual.
  • No existe examen final. Sólo se puede presentar reposición de una práctica y un examen al final del ciclo escolar.
  • Las prácticas y tareas se entregarán por Classroom en la fecha estipulada; se aplicará una penalización de dos puntos por cada dia natural de retraso.
  • Las tareas deberán entregarse en .pdf, generado con una aplicación de su preferencia o como resultado de escanear papeles escritos con tinta.
  • El proyecto final es obligatorio para tener derecho a calificación y tiene como fecha única de entrega de al menos dos semanas después de terminar el ciclo escolar.
  • Las entregas pueden cambiar de fecha por circunstancias de la Facultad ajenas a nuestro control o por causas de fuerza mayor de los estudiantes, las cuales sean comprobables por algún documento.
  • Derecho a NP si no se entrega nada, si se incumple el punto anterior, o bien, si el promedio final es mayor o igual a 5 y menor estricto que 6.

 


Hecho en México, todos los derechos reservados 2011-2016. Esta página puede ser reproducida con fines no lucrativos, siempre y cuando no se mutile, se cite la fuente completa y su dirección electrónica. De otra forma requiere permiso previo por escrito de la Institución.
Sitio web administrado por la Coordinación de los Servicios de Cómputo de la Facultad de Ciencias. ¿Dudas?, ¿comentarios?. Escribenos. Aviso de privacidad.