Syllabus

SCC-0408 Estructura de Datos

DR. MIGUEL ÁNGEL COHUO ÁVILA

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 ( bytes)
                           diapositvas de ejercicio ( bytes)
                           Material de AutoAprendizaje Unidad I ( bytes)
                           Programa para eliminar Virus de las Memorias ( bytes)
                          
                   1.1.2. Aritmética de la notación O.
                           analisis de algoritmos ( bytes)
                          
                   1.1.3. Complejidad. en tiempo y espacio
                           analisis de algoritmos ( bytes)
                           otras diapositavas de analisis de algoritmos ( bytes)
                          
                   1.1.4. Selección de un algoritmo.
                           Examen Practico Primer Parcial ( 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 ( bytes)
                          
                   1.2.2. Recursos que consume un algoritmo
                           archivo de clase2.ppt ( bytes)
                          
2. Manejo de memoria.
          2.1. Manejo de memoria.
                   2.1.1. Manejo de memoria estática.
                           manejo de memoria ( bytes)
                           Material de Autoaprendizaje de la Unidad II ( bytes)
                           Archivo de entrada para la Practica 2 ( bytes)
                           http://www.itapizaco.edu.mx/paginas/JavaTut/froufe/parte5/cap5-2.html
                          
                   2.1.2. Manejo de memoria dinámica.
                           manejo de memoria ( bytes)
                          
          2.2. Conceptos basicos en el manejo de memoria
                   2.2.1. stack
                           manipulacion de memoria con sus diferentes elementos ( bytes)
                          
                   2.2.2. heap
                           manejo de heap ( bytes)
                          
3. Estructuras lineales, estática y dinámicas.
          3.1. Pilas.
                   3.1.1. Conceptos y elementos
                           Api de Java Stack
                           pilas ( bytes)
                           Material deAutoaprendizaje Unidad III ( 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 ( bytes)
                           Ejemplo 2 ( bytes)
                          
          3.2. Colas.
                   3.2.1. Conceptos y elementos (colas)
                           colas ( bytes)
                           Teoria ( bytes)
                           Animacion 1 ( bytes)
                          
                   3.2.2. principales operaciones
                           Cairo, Guardatti, "Estructuras de datos, 2a. edicion", Mc. Graw Hill, México. 2002.
                           Animacion 2 ( bytes)
                           Animación 3 ( bytes)
                           Animacion 4 ( bytes)
                          
          3.3. Listas enlazadas.
                   3.3.1. Simples.
                           Cairo, Guardatti, "Estructuras de datos, 2a. edicion", Mc. Graw Hill, México. 2002.
                           listas ( bytes)
                           Recursos ( bytes)
                          
                   3.3.2. Dobles.
                           Cairo, Guardatti, "Estructuras de datos, 2a. edicion", Mc. Graw Hill, México. 2002.
                           Nodo de la lsita ( bytes)
                           Ejemplo lista ( bytes)
                           Convertir a Listas ( 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 ( bytes)
                          
                   4.1.2. Procedimientos recursivos.
                           recursividad ( bytes)
                          
                   4.1.3. Mecánica de recursión.
                           mas sobre recursividad ( 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 ( 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 ( bytes)
                           Material de Autoaprendizaje Unidad V ( bytes)
                           Examen Practico Segundo Parcial ( bytes)
                           Examen Practico Segundo Parcial 20082009N ( 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 ( bytes)
                           segunda parte ( 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 ( bytes)
                           http://www.algoritmia.net/articles.php?id=17
                          
                   5.2.3. Balanceo.
                           Estructura de datos Cairo y Guardatti
                           presentacion ( bytes)
                          
6. Ordenación interna.
          6.1. Algoritmos de Ordenamiento por intercambio
                   6.1.1. Burbuja.
                           Dra Pilar Gomez UDLAP ( bytes)
                           Material de Autoaprendizaje Unidad VI ( bytes)
                           metodo de la burbuja ( bytes)
                           www.udlap.mx/~pgomez/is_207/ordenamientos.pdf
                          
                   6.1.2. Quicksort.
                           Metodo quick sort ( bytes)
                           http://www.udlap.mx/~ingrid/Clases/IS211/Ordenar.html
                          
                   6.1.3. ShellSort
                           metodo shell ( bytes)
                           http://www.udlap.mx/~ingrid/Clases/IS211/Ordenar.html
                          
          6.2. Algoritmos de ordenamiento por distribucion
                   6.2.1. Radix.
                           radix ( bytes)
                           Metodo Radix ( bytes)
                           www.tdx.cesca.es/TESIS_UPC/AVAILABLE/ TDX-0303105-155330/05Djg05de14.pdf
                          
                   6.2.2. Otros Metodos
                           Seleccion directa ( bytes)
                           Monticulo ( bytes)
                           Shakersort ( bytes)
                           insercion directa ( bytes)
                           insercion binaria ( 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 ( bytes)
                           Material de autoaprendizaje unidad VII ( 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 ( 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 ( 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 (20222023P)
Fecha
Hora
Grupo
Aula
Práctica
Descripción

Cronogramas (20222023P)
Grupo Actividad Fecha Carrera

Temas para Segunda Reevaluación