Syllabus

SCC-0408 Estructura de Datos

DR. MIGUEL ANGEL COHUO AVILA

macohuo@itescam.edu.mx

Semestre Horas Teoría Horas Práctica Créditos Clasificación
3 4 2 10

Prerrequisitos
Habilidades para realizar análisis y diseños orientados a objetos.
Aplicación de las nociones teóricas de la orientación a objetos
Programación en JAVA
Interpretación de algoritmos
Diseño de diagramas de caso de uso, diagrama de clases y diagramas de secuencia (UML)
Aplicación del paradigma orientado a objetos en proyectos aplicactivos, como herencia, polimorfismo, abstraccion, encapsulamiento y determinacion de clases con atributos y comportamientos
Aplicación de archivos en java asi como la formacion de paquetes; aplicación de sobrecarga de metodos, manejo de arreglos clases abstractas, herencia polimorfismo y manejo de excepciones

Competencias Atributos de Ingeniería

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

Parámetros de Examen
PARCIAL 1 De la actividad 1.1.1 a la actividad 3.2.2
PARCIAL 2 De la actividad 3.3.1 a la actividad 5.2.3

Contenido (Unidad / Competencia / Actividad / Material de Aprendizaje)
1. Análisis de algoritmos.
          1.1. Análisis de algoritmos.
                   1.1.1. Concepto de Complejidad de algoritmos.
                           analisis de algoritmos (138752 bytes)
                           diapositvas de ejercicio (142 bytes)
                           Material de AutoAprendizaje Unidad I (642192 bytes)
                           Programa para eliminar Virus de las Memorias (39927 bytes)
                          
                   1.1.2. Aritmética de la notación O.
                           analisis de algoritmos (317952 bytes)
                          
                   1.1.3. Complejidad. en tiempo y espacio
                           analisis de algoritmos ( bytes)
                           otras diapositavas de analisis de algoritmos (396089 bytes)
                          
                   1.1.4. Selección de un algoritmo.
                           Examen Practico Primer Parcial (3834 bytes)
                           http://www.lab.dit.upm.es/~lprg/material/apuntes/o/
                          
          1.2. Caracteristicas de los algoritmos
                   1.2.1. Concepto de algoritmo
                           analizando algoritmos (113485 bytes)
                          
                   1.2.2. Recursos que consume un algoritmo
                           archivo de clase2.ppt (317952 bytes)
                          
2. Manejo de memoria.
          2.1. Manejo de memoria.
                   2.1.1. Manejo de memoria estática.
                           manejo de memoria (150647 bytes)
                           Material de Autoaprendizaje de la Unidad II (1048576 bytes)
                           Archivo de entrada para la Practica 2 (665 bytes)
                           http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte5/cap5-2.html
                          
                   2.1.2. Manejo de memoria dinámica.
                           manejo de memoria (150647 bytes)
                          
          2.2. Conceptos basicos en el manejo de memoria
                   2.2.1. stack
                           manipulacion de memoria con sus diferentes elementos (47109 bytes)
                          
                   2.2.2. heap
                           manejo de heap (47109 bytes)
                          
3. Estructuras lineales, estática y dinámicas.
          3.1. Pilas.
                   3.1.1. Conceptos y elementos
                           Api de Java Stack
                           pilas (156672 bytes)
                           Material deAutoaprendizaje Unidad III (1048576 bytes)
                           http://www.programacion.com/java/tutorial/jap_data_alg/5/
                          
                   3.1.2. principales operaciones
                           Cairo, Guardatti, "Estructuras de datos, 2a. edicion", Mc. Graw Hill, México. 2002.
                           Ejemplo (1021 bytes)
                           Ejemplo 2 (690 bytes)
                          
          3.2. Colas.
                   3.2.1. Conceptos y elementos (colas)
                           colas (135168 bytes)
                           Teoria (121311 bytes)
                           Animacion 1 (48187 bytes)
                          
                   3.2.2. principales operaciones
                           Cairo, Guardatti, "Estructuras de datos, 2a. edicion", Mc. Graw Hill, México. 2002.
                           Animacion 2 (61357 bytes)
                           Animación 3 (75997 bytes)
                           Animacion 4 (830328 bytes)
                          
          3.3. Listas enlazadas.
                   3.3.1. Simples.
                           Cairo, Guardatti, "Estructuras de datos, 2a. edicion", Mc. Graw Hill, México. 2002.
                           listas (265216 bytes)
                           Recursos (6940 bytes)
                          
                   3.3.2. Dobles.
                           Cairo, Guardatti, "Estructuras de datos, 2a. edicion", Mc. Graw Hill, México. 2002.
                           Nodo de la lsita (1328 bytes)
                           Ejemplo lista (1824 bytes)
                           Convertir a Listas (40101 bytes)
                          
4. Recursividad.
          4.1. Elementos de la recursividad
                   4.1.1. Definición.
                           http://faea.uncoma.edu.ar/materias/elementos/apuntes.html
                           MAterial de Autoaprendizaje de la unidad IV (837879 bytes)
                          
                   4.1.2. Procedimientos recursivos.
                           recursividad (53437 bytes)
                          
                   4.1.3. Mecánica de recursión.
                           mas sobre recursividad (585117 bytes)
                          
          4.2. Manejo de la recursividad
                   4.2.1. Transformación de algoritmos iterativos y recursivos
                           http://www2.ing.puc.cl/iic1102/materia/pdf/capitulo10.pdf
                          
                   4.2.2. Recursividad en el diseño
                           Estructura de datos Cairo y Guardatti
                          
                   4.2.3. Complejidad en algoritmos recursivos
                           complejidad en algoritmos recursivos (248287 bytes)
                           www2.ing.puc.cl/~iic11026/materia/cap11.pdf
                          
5. Estructuras no lineales, estáticas y dinámicas.
          5.1. Concepto de árbol.
                   5.1.1. Clasificación de árboles.
                           Estructura de datos cairo y Guardatti
                           arboles generales (120832 bytes)
                           Material de Autoaprendizaje Unidad V (1048576 bytes)
                           Examen Practico Segundo Parcial (3688 bytes)
                           Examen Practico Segundo Parcial 20082009N (4518 bytes)
                          
                   5.1.2. Diferentes formas de representar un arbol
                           http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte14/cap14-12.html
                           http://www.gfc.edu.co/estudiantes/anuario/2003/sistemas/victor/java/doc/arbol/c13.html
                          
          5.2. Operaciones Básicas sobre árboles binarios
                   5.2.1. Creacion e insercion
                           arboles binarios (129024 bytes)
                           segunda parte (182272 bytes)
                           http://www.algoritmia.net/articles.php?id=17
                           http://www.gfc.edu.co/estudiantes/anuario/2003/sistemas/victor/java/doc/arbol/index.html
                          
                   5.2.2. Eliminación y Recorridos sistemáticos.
                           Arboles binarios de busqueda (137728 bytes)
                           http://www.algoritmia.net/articles.php?id=17
                          
                   5.2.3. Balanceo.
                           Estructura de datos Cairo y Guardatti
                           presentacion (240128 bytes)
                          
6. Ordenación interna.
          6.1. Algoritmos de Ordenamiento por intercambio
                   6.1.1. Burbuja.
                           Dra Pilar Gomez UDLAP (127857 bytes)
                           Material de Autoaprendizaje Unidad VI (745831 bytes)
                           metodo de la burbuja (675918 bytes)
                           www.udlap.mx/~pgomez/is_207/ordenamientos.pdf
                          
                   6.1.2. Quicksort.
                           Metodo quick sort (71194 bytes)
                           http://www.udlap.mx/~ingrid/Clases/IS211/Ordenar.html
                          
                   6.1.3. ShellSort
                           metodo shell (139576 bytes)
                           http://www.udlap.mx/~ingrid/Clases/IS211/Ordenar.html
                          
          6.2. Algoritmos de ordenamiento por distribucion
                   6.2.1. Radix.
                           radix (141700 bytes)
                           Metodo Radix (421809 bytes)
                           www.tdx.cesca.es/TESIS_UPC/AVAILABLE/ TDX-0303105-155330/05Djg05de14.pdf
                          
                   6.2.2. Otros Metodos
                           Seleccion directa (23857 bytes)
                           Monticulo (57368 bytes)
                           Shakersort (12178 bytes)
                           insercion directa (88692 bytes)
                           insercion binaria (48432 bytes)
                           http://www.lcc.uma.es/~galvez/ftp/tad/practica4.html
                          
7. Ordenación externa.
          7.1. Intercalacion directa
                   7.1.1. Elementos (intercalacion directa)
                           apuntes (160139 bytes)
                           Material de autoaprendizaje unidad VII (933161 bytes)
                           http://multimedia.eui.upm.es/ED-II/Tema-4/
                          
                   7.1.2. Operaciones (intercalacion directa)
                           http://www.itlp.edu.mx/publica/tutoriales/estructdatos2/tema%202_3.htm
                          
          7.2. Mezcla natural
                   7.2.1. Elementos (mezcla natural)
                           http://www.dcc.uchile.cl/~cc30a/apuntes/Ordenacion/
                           http://www.itlp.edu.mx/publica/tutoriales/estructdatos2/tema 3_3.htm
                           http://www.lcc.uma.es/~afdez/apuntes/metodologia/transparencias/eco_ordenacionbusqueda.PDF
                          
                   7.2.2. Operaciones (mezcla natural)
                           http://www.lcc.uma.es/~afdez/apuntes/metodologia/transparencias/eco_ordenacionbusqueda.PDF
                          
8. Métodos de búsqueda.
          8.1. Algoritmos de ordenación externa.
                   8.1.1. Secuencial (ordenacion externa)
                           Material de Autoaprendizaje de la Unidad VIII (241991 bytes)
                           http://www.itlp.edu.mx/publica/tutoriales/estructdatos2/unidad5.htm
                          
                   8.1.2. Binaria. y hash (ordenacion externa)
                           http://www.itlp.edu.mx/publica/tutoriales/estructdatos2/unidad5.htm
                          
          8.2. Búsqueda externa.
                   8.2.1. secuencial (busqueda externa)
                           http://www.lcc.uma.es/~afdez/apuntes/metodologia/transparencias/eco_ordenacionbusqueda.PDF (409584 bytes)
                           http://www.lcc.uma.es/~afdez/apuntes/metodologia/transparencias/eco_ordenacionbusqueda.PDF
                          
                   8.2.2. Binaria. y hash (busqueda externa)
                           http://www.lcc.uma.es/~afdez/apuntes/metodologia/transparencias/eco_ordenacionbusqueda.PDF
                          

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

Cronogramas (20232024P)
Grupo Actividad Fecha Carrera

Temas para Segunda Reevaluación