Syllabus

AED-1026 ESTRUCTURA DE DATOS

DR. JOSE ALFONSO CUEVAS BACAB

jacuevas@itescam.edu.mx

Semestre Horas Teoría Horas Práctica Créditos Clasificación
3 2 3 5 Ciencia Ingeniería

Prerrequisitos
Analizar, diseñar y desarrollar soluciones de problemas reales utilizando algoritmos computacionales para implementarlos en un lenguaje de programación.
Conocer y comprender los conceptos básicos de lógica matemática, relaciones, grafos y árboles para aplicarlos a modelos que resuelvan problemas de computación.
Diseñar e implementar objetos de programación que permitan resolver situaciones reales y de ingeniería.

Competencias Atributos de Ingeniería
Conoce y comprende las diferentes estructuras de datos, su clasificación y forma de manipularlas para buscar la manera más eficiente de resolver problemas.   Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas
Aplica la recursividad en la solución de problemas valorando su pertinencia en el uso eficaz de los recursos.   Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas
Comprende y aplica estructuras de datos lineales para solución de problemas.   Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería
Comprende y aplica estructuras no lineales para la solución de problemas.   Identificar, formular y resolver problemas de ingeniería aplicando los principios de las ciencias básicas e ingeniería
Conoce, comprende y aplica los algoritmos de ordenamiento para el uso adecuado en el desarrollo de aplicaciones que permita solucionar problemas del entorno.   Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas
Conoce, comprende y aplica los algoritmos de búsqueda para el uso adecuado en el desarrollo de aplicaciones que permita solucionar problemas del entorno.   Aplicar, analizar y sintetizar procesos de diseño de ingeniería que resulten en proyectos que cumplen las necesidades específicas

Normatividad
1.- El alumno se comportara y se dirigirá asi sus compañeros y al maestro con el respeto debido.
2.- El alumno tendrá el derecho de entrar al salón de clases después de 25 min. de iniciada la sesión de clases.
3.- El alumno que incumpla 2 veces su participación se quedara sin participación
4.- El alumno que no entregue sus programas correspondientes a la unidad no tendra derecho a sustentar su examen práctico

Materiales
J2SDK Compilador de java. NetBeans (IDE de programación JAVA)o JUDDE COMUNNITY Foro y chat de discusión (Iniciativa del alumno).
Comprensión de literatura en Ingles por parte del alumno Exposiciones.
Debates Desarrollo de programas para clarificar conceptos de la materia

Bibliografía disponible en el Itescam
Título
Autor
Editorial
Edición/Año
Ejemplares
Estructura de datos orientadas a objetos : Pseudocódigo y aplicaciones en C# .Net /
López Taketas, Bruno
Alfaomega,
2012.
2
-
Estructuras de datos y algoritmos /
Aho, Alfred V.
Pearson educación,
1988.
3
-
Estructura de datos: Referencia práctica con orientación a objetos /
Martínez, Román
Thomson,
2002.
8
-
Estructura de datos orientadas a objetos : Pseudocódigo y aplicaciones en C# .Net /
López Taketas, Bruno
Alfaomega,
2012.
2
-
Estructura de datos /
Cairó, Osvaldo
McGraw-Hill,
3a. / 2006.
14
Si

Parámetros de Examen
PARCIAL 1 De la actividad 1.1.1 a la actividad 3.1.4
PARCIAL 2 De la actividad 4.1.1 a la actividad 6.1.3

Contenido (Unidad / Competencia / Actividad / Material de Aprendizaje)
1. Introducción a las estructuras de datos.
          1.1. Conoce y comprende las diferentes estructuras de datos, su clasificación y forma de manipularlas para buscar la manera más eficiente de resolver problemas.
                   1.1.1. Investigar las diferentes estructuras de datos y su clasificación para elaborar un cuadro sinóptico.
                           1.1 Clasificación de las estructuras de datos ( bytes)
                           Manual de Prácticas ( bytes)
                           Capítulo 1. Algoritmos y estructuras de datos del tema 1.1 al 1.2.1 del libro ESTRUCTURA DE DATOS EN JAVA
                           Esfera ( bytes)
                           TDA ( bytes)
                          
                   1.1.2. Hacer un resumen sobre el concepto de Tipos de datos abstractos y su implementación en la programación orientada a objetos.
                           1.2 Tipo de Datos Abstractos (Cap. 2 del libro estructura de datos en java)
                           TDA ( bytes)
                           http://users.dcc.uchile.cl/~bebustos/apuntes/cc30a/TDA/
                          
                   1.1.3. Escribir un programa para la generación de vectores en tiempo de ejecución.
                           Capitulo 2 del libro Estructura de Datos en Java
                           1.3 Ejemplos de TDA's ( bytes)
                          
                   1.1.4. Escribir un programa que ejemplifique el uso de la memoria dinámica.
                           capitulo 3 del libro Estructura de Datos en Java
                           1.4 Manejo de memoria ( bytes)
                           Características de las Matrices ( bytes)
                           Arreglos Multidimencionales ( bytes)
                          
                   1.1.5. Identificar la eficiencia de dos algoritmos distintos que resuelven un mismo problema y elaborar un cuadro comparativo.
                           Analisis de algoritmos ( bytes)
                           1.5 Análisis de algoritmos ( bytes)
                          
2. Recursividad.
          2.1. Aplica la recursividad en la solución de problemas valorando su pertinencia en el uso eficaz de los recursos.
                   2.1.1. Redactar una definición propia del concepto de recursividad después de consultar en diferentes fuentes bibliográficas y comentarla en trinas.
                           RECURSIVIDAD ( bytes)
                           TEMA RECURSIVIDAD ( bytes)
                           Planeación Didáctica - UNIDAD 2 ( bytes)
                          
                   2.1.2. Trasladar un catálogo de problemas iterativos a recursivos, donde distinga el segmento recursivo y la condición de salida, elaborar un reporte de práctica de ejercicios.
                           RECURSIVIDAD ( bytes)
                           RECURSIVIDAD ( bytes)
                           RECURSIVIDAD 2 ( bytes)
                          
                   2.1.3. Desarrollar programas en los cuales se aplique la recursividad y entregar informe.
                           Recursividad ( bytes)
                          
3. Estructuras lineales.
          3.1. Comprende y aplica estructuras de datos lineales para solución de problemas.
                   3.1.1. Consultar las características y aplicación de las estructuras lineales en diversas fuentes bibliográficas y comentarlas en plenaria.
                           REPRESENTACION ( bytes)
                           COLAS ( bytes)
                           Pilas ( bytes)
                           Planeación Didáctica - UNIDAD 3 ( bytes)
                          
                   3.1.2. Programar las operaciones básicas de pilas y colas de manera estática (usando arreglos) entregando los códigos correspondientes
                           INSERTAR COLA SIMPLE ( bytes)
                           ELIMINAR COLA SIMPLE ( bytes)
                           INSERTAR COLA CIRCULAR ( bytes)
                           ELIMINAR COLA CIRCULAR.ZIP ( bytes)
                          
                   3.1.3. Utilizar las clases predefinidas para el manejo de pilas, colas y listas enlazadas (dinámicas) y describir en un texto la diferencia de hacerlo con arreglos.
                           Pilas ( bytes)
                          
                   3.1.4. Utilizar las estructuras lineales en la elaboración de códigos para la resolución de problemas elaborando un reporte.
                           Listas ( bytes)
                           Listas Enlazadas ( bytes)
                          
4. Estructuras no lineales
          4.1. Comprende y aplica estructuras no lineales para la solución de problemas.
                   4.1.1. Elaborar un cuadro sinóptico o esquema con la clasificación de los árboles y sus aplicaciones.
                           ARBOLES GENERALES ( bytes)
                           ARBOLES ( bytes)
                           ARBOLES 2 ( bytes)
                           Planeación Didáctica - UNIDAD 4 ( bytes)
                          
                   4.1.2. Implementar las operaciones básicas de inserción, eliminación y búsqueda en un árbol binario.
                           ARBOLES BALANCEADOS ( bytes)
                           ARBOLES BINARIOS DE BUSQUEDA ( bytes)
                           ARBOLES BINARIOS ( bytes)
                           ARBOLES BINARIOS 2 ( bytes)
                          
                   4.1.3. Hacer un mapa conceptual o mental del uso y aplicaciones de los grafos
                           Representación de grafos ( bytes)
                          
                   4.1.4. Desarrollar aplicaciones con grafos y elaborar un reporte de prácticas
                           Operaciones básicas ( bytes)
                          
5. Métodos de ordenamiento.
          5.1. Conoce, comprende y aplica los algoritmos de ordenamiento para el uso adecuado en el desarrollo de aplicaciones que permita solucionar problemas del entorno.
                   5.1.1. Consultar en fuentes bibliográficas los diversos algoritmos de ordenamiento y generar un cuadro comparativo.
                           Métodos de Ordenamiento ( bytes)
                          
                   5.1.2. Resolver problemas donde se justifique la necesidad de utilizar métodos de ordenamiento, describiendo los resultados obtenidos en exposición grupal.
                           Métodos de Ordenamiento ( bytes)
                          
                   5.1.3. Realizar ejercicios donde se elaboren programas de los diferentes métodos de ordenamiento y entregar el código.
                           Métodos de Ordenamiento ( bytes)
                          
6. Métodos de búsqueda
          6.1. Conoce, comprende y aplica los algoritmos de búsqueda para el uso adecuado en el desarrollo de aplicaciones que permita solucionar problemas del entorno.
                   6.1.1. Consultar en fuentes bibliográficas los diversos algoritmos de búsqueda y elaborar cuadro comparativo.
                           BUSQUEDA SECUENCIAL ( bytes)
                           BUSQUEDA BINARIA ( bytes)
                           Planeación Didáctica - UNIDAD 6 ( bytes)
                          
                   6.1.2. Resolver problemas donde se justifique la necesidad de utilizar métodos de búsqueda para una lista de datos generados aleatoriamente, describiendo los resultados obtenidos en exposición grupal.
                           ARBOL DE BUSQUEDA ( bytes)
                           CLAVES HASH ( bytes)
                          
                   6.1.3. Realizar ejercicios donde se elaboren programas de los diferentes métodos de búsqueda y entregar el código.
                           Búsqueda por funciones de HASH ( bytes)
                          

Prácticas de Laboratorio (20212022P)
Fecha
Hora
Grupo
Aula
Práctica
Descripción

Cronogramas (20212022P)
Grupo Actividad Fecha Carrera

Temas para Segunda Reevaluación