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 (25600 bytes)
                           Manual de Prácticas (11361 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 (90366 bytes)
                           TDA (204800 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 (204800 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 (150138 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 (1112758 bytes)
                           Características de las Matrices (264192 bytes)
                           Arreglos Multidimencionales (114688 bytes)
                          
                   1.1.5. Identificar la eficiencia de dos algoritmos distintos que resuelven un mismo problema y elaborar un cuadro comparativo.
                           Analisis de algoritmos (396089 bytes)
                           1.5 Análisis de algoritmos (230793 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 (53437 bytes)
                           TEMA RECURSIVIDAD (585117 bytes)
                           Planeación Didáctica - UNIDAD 2 (36884 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 (36352 bytes)
                           RECURSIVIDAD (59510 bytes)
                           RECURSIVIDAD 2 (197860 bytes)
                          
                   2.1.3. Desarrollar programas en los cuales se aplique la recursividad y entregar informe.
                           Recursividad (53437 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 (399872 bytes)
                           COLAS (135680 bytes)
                           Pilas (153600 bytes)
                           Planeación Didáctica - UNIDAD 3 (36922 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 (48159 bytes)
                           ELIMINAR COLA SIMPLE (830298 bytes)
                           INSERTAR COLA CIRCULAR (61329 bytes)
                           ELIMINAR COLA CIRCULAR.ZIP (75969 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 (310784 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 (1017856 bytes)
                           Listas Enlazadas (262656 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 (118784 bytes)
                           ARBOLES (285184 bytes)
                           ARBOLES 2 (311808 bytes)
                           Planeación Didáctica - UNIDAD 4 (36900 bytes)
                          
                   4.1.2. Implementar las operaciones básicas de inserción, eliminación y búsqueda en un árbol binario.
                           ARBOLES BALANCEADOS (586752 bytes)
                           ARBOLES BINARIOS DE BUSQUEDA (152576 bytes)
                           ARBOLES BINARIOS (129024 bytes)
                           ARBOLES BINARIOS 2 (181248 bytes)
                          
                   4.1.3. Hacer un mapa conceptual o mental del uso y aplicaciones de los grafos
                           Representación de grafos (235008 bytes)
                          
                   4.1.4. Desarrollar aplicaciones con grafos y elaborar un reporte de prácticas
                           Operaciones básicas (20354 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 (6080915 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 (6080915 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 (6080915 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 (212992 bytes)
                           BUSQUEDA BINARIA (123392 bytes)
                           Planeación Didáctica - UNIDAD 6 (36774 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 (194560 bytes)
                           CLAVES HASH (1106432 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 (733184 bytes)
                          

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

Cronogramas (20232024P)
Grupo Actividad Fecha Carrera

Temas para Segunda Reevaluación