Syllabus

IFM-0412 Estructura de Datos

DR. HECTOR QUEJ COSGAYA

hquej@itescam.edu.mx

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

Prerrequisitos
1.- Conocimiento teórico práctico para la solución de problemas utilizando el paradigma de la programación orientada a objetos. 2.- Manejo de lenguajes de programación orientados a objetos (al menos uno).

Competencias Atributos de Ingeniería

Normatividad
1) La forma de evaluación correspondiente al 20 % de Participación es: Criterio A.- Exposición de contenidos temáticos 5% Criterio B.- Desarrollo de aplicaciones de software 10%. Criterio C.- Trabajos colaborativo en equipo e investigación 3%. Criterio D.- Asistencia a clases 2% 2) La forma de evaluación correspondiente al 20 % de Trabajo Documental es: Criterio E.- Contenido informativo e investigación 5%. Criterio F.- Criterio personal e análisis de texto 10% Criterio G.- Fuentes bibliografícas 2% Criterio H.- Formato y redacción 3%. . 2)El alumno deberá: Cumplir con el 80% de las asistencias. Tolerancia de 15 minutos en caso de entrada a clase 14:00 horas Tolerancia de 10 minutos para cualquier otro horario. El protocolo para enviar correo es el siguiente: gpo3(Ao B)-->indica el grado y grupo del alumno
IFN-->Indica la clave de la materia(ESTRUCURA DE DATOS)

Ejemplo: gpo3AIFNequipo1-1

Materiales
1. Software de Lenguajes de Programación (C++, Java, etc) 2. Computadoras Personales (una por alumno)

Bibliografía disponible en el Itescam
Título
Autor
Editorial
Edición/Año
Ejemplares
Parámetros de Examen
PARCIAL 1 Unidad I y temas Unidad II 2.1
PARCIAL 2 Unidad II temas 2.2 y posteriores, Unidad III

Contenido (Unidad / Competencia / Actividad / Material de Aprendizaje)
1. Tipos de datos.
          1.1. Tipos de datos simples.
                   1.1.1. Definición de bit, byte, carácter y palabra.
                           Definiciones de bit, byte, caracter y palabra (12974 bytes)
                           Definiciones (18027 bytes)
                           http://www.mastermagazine.info/termino/4050.php
                          
                   1.1.2. Manipulación de bits.
                           Definicion de manipulación de bits (16593 bytes)
                           corrimiento de bits (31928 bytes)
                           manipulacion de bits (320573 bytes)
                          
                   1.1.3. Representación de datos simples.
                           Representacion de datos (140585 bytes)
                           apuntes (436666 bytes)
                           http://pisuerga.inf.ubu.es/lsi/Invest/Java/Tuto/II_2.htm
                           http://es.wikipedia.org/wiki/Tipo_de_dato
                          
          1.2. Tipos de datos abstractos.
                   1.2.1. Tipos de datos abstractos.
                           Tipos de datos abstractos (138601 bytes)
                           Tipos abstractos 2 (232363 bytes)
                           Tipos abstractos POO (206848 bytes)
                          
          1.3. Estructuras de datos.
                   1.3.1. Definición
                           Definiciones (408064 bytes)
                           http://es.wikipedia.org/wiki/Estructura_de_datos
                          
                   1.3.2. Lineales y no lineales.
                           Estructuras lineales (52238 bytes)
                           Estructuras lineales2 (432233 bytes)
                           Estructuras lineales (52238 bytes)
                          
                   1.3.3. Dinámicas y estáticas.
                           ED_dinamicas y estaticas (942041 bytes)
                           http://www.mitecnologico.com/Main/EstructurasDeDatosLinealesYNoLineales
                           http://www.monografias.com/trabajos14/estrucdinamicas/estrucdinamicas.shtml
                          
2. Estructuras lineales.
          2.1. Arreglos.
                   2.1.1. Definición.
                           Definicion de arreglos (65725 bytes)
                           Arreglos (330752 bytes)
                          
                   2.1.2. Unidimensionales.
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/12.htm
                          
                   2.1.3. Bidimensionales.
                           Bidimencionales (106496 bytes)
                           http://www.mitecnologico.com/Main/ArregloBidimensionalConceptosBasicos
                          
                   2.1.4. Multidimensionales.
                           Multidimensionales (106496 bytes)
                           http://sistemas.itlp.edu.mx/tutoriales/progorientobjetos/t13.htm
                          
                   2.1.5. Resolución de problemas con arreglos.
                           Resolución de problemas (750473 bytes)
                           Problemas (81408 bytes)
                           http://www.mitecnologico.com/Main/Resoluci%F3nDeProblemasConArreglos
                           http://medusa.unimet.edu.ve/programacion/bppr11/codigos.htm
                          
                   2.1.6. Clases para la implementación de arreglos.
                           Ejemplo (556 bytes)
                           Ejemplo2 (623 bytes)
                           Ejemplo3 (488 bytes)
                           Ejemplo4 (586 bytes)
                           http://javabasico.osmosislatina.com/curso/polimorfismo.htm#vechash
                          
          2.2. Pilas.
                   2.2.1. Definición.
                           Definicion (139776 bytes)
                          
                   2.2.2. Operaciones.
                           Operaciones (119256 bytes)
                           Ejemplo2 (17544 bytes)
                           Operaciones con pilas (2366 bytes)
                           ejemplo (1314 bytes)
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/36.htm
                          
                   2.2.3. Clases para la implementación de pilas.
                           Implementacion (44358 bytes)
                           implementacion de pilas (111608 bytes)
                          
          2.3. Colas.
                   2.3.1. Definición.
                           http://www.conclase.net/c/edd/index.php?cap=003#3_1
                           http://www.conclase.net/c/edd/index.php?cap=003b#3_3
                           http://www.conclase.net/c/edd/index.php?cap=003#3_2
                           http://www.conclase.net/c/edd/index.php?cap=003#3_2
                          
                   2.3.2. Colas simples.
                           Colas ejemplos (479314 bytes)
                           Colas simples (399360 bytes)
                          
                   2.3.3. Colas circulares.
                           Definiciones (88641 bytes)
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/24.htm
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/23.htm
                          
                   2.3.4. Colas dobles.
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/25.htm
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/26.htm
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/32.htm
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/32.htm
                           http://es.wikipedia.org/wiki/Bicola#Especificaci.C3.B3n_de_colas_dobles_en_java
                          
                   2.3.5. Operaciones.
                           http://sistemas.itapizaco.edu.mx/paginas/EDATOS/t332.html
                           http://www.monografias.com/trabajos25/colas/colas.shtml#operac
                           http://sistemas.itapizaco.edu.mx/paginas/EDATOS/t332.html
                          
                   2.3.6. Clases para la implementación de colas.
                           http://albertjh.cymaho.com/?p=381
                          
3. Listas enlazadas.
          3.1. Listas enlazadas.
                   3.1.1. Simples.
                           Tutorial listas (28079 bytes)
                           http://es.wikipedia.org/wiki/Lista_(inform%C3%A1tica)
                           http://es.wikipedia.org/wiki/Lista_(inform%C3%A1tica)#Listas_simples_enlazadas
                           http://www.fceia.unr.edu.ar/estruc/2006/listensi.htm
                          
                   3.1.2. Dobles.
                           algoritmos de listas (107760 bytes)
                           Expo de listas (653312 bytes)
                           http://decsai.ugr.es/~jfv/ed1/tedi/cdrom/docs/ldoble.html
                          
                   3.1.3. Circulares.
                           Ejemplo de lista (2929 bytes)
                           http://www.programacionfacil.com/estructura_de_datos/listas_circulares
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/45.htm
                           http://www.conclase.net/c/edd/index.php?cap=004
                          
                   3.1.4. Multilistas.
                           Diapositiva de clase (368640 bytes)
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/46.htm
                          
                   3.1.5. Clases para la implementación de listas.
                           Metodos con clases (76895 bytes)
                           Clases Java (listas) (4725 bytes)
                           http://xromsystem.net/?p=206
                           http://www.conclase.net/c/edd/index.php?cap=001
                          
4. Estructuras no lineales.
          4.1. Árboles.
                   4.1.1. Definición.
                           arboles (311808 bytes)
                           Arboles2 (221184 bytes)
                           http://es.wikipedia.org/wiki/%C3%81rbol_(estructura_de_datos)
                           http://www.algoritmia.net/articles.php?id=17
                          
                   4.1.2. Árboles generales.
                           Arboles generales (117760 bytes)
                           http://www.monografias.com/trabajos36/arboles/arboles2.shtml#general
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/61.htm
                          
                   4.1.3. Árboles binarios.
                           arboles binarios ejemplos (255086 bytes)
                           arboles binarios (448512 bytes)
                           arboles binarios 2parte (181760 bytes)
                          
                   4.1.4. Preorden.
                           Recorridos ver preorden (20354 bytes)
                           ver pagina 12 (255086 bytes)
                           http://www.lsi.us.es/docencia/asignaturas/ip1/trabajos/Subhtmls/Recorrido%20en%20preorden.htm
                          
                   4.1.5. Inorden.
                           ver pag.2 (30813 bytes)
                           inorden (144669 bytes)
                           http://www.lsi.us.es/docencia/asignaturas/ip1/trabajos/Subhtmls/Recorrido%20en%20inorden.htm
                           http://ejemplos.mis-algoritmos.com/crea-un-arbol-binario-y-lo-recorre-en-preorden-inorden-y-en-postorden
                          
                   4.1.6. Posorden.
                           posorden (181760 bytes)
                           recorridos (598528 bytes)
                           http://www.algoritmia.net/articles.php?id=17#problemas
                           http://www.algoritmia.net/articles.php?id=17#recor
                          
                   4.1.7. Balanceo de árboles binarios.
                           arbol balanceado2 (25722 bytes)
                           arbol balanceado (391680 bytes)
                           busqueda (137728 bytes)
                           http://es.wikipedia.org/wiki/%C3%81rbol_AVL
                          
                   4.1.8. Clases para la implementación de árboles.
                           Algortimos (1584552 bytes)
                           Ejemplos de arbol binario (1105102 bytes)
                           Ejemplo en java (5682 bytes)
                           Ejemplo de arbol en java (24715 bytes)
                           http://www.it.uc3m.es/tsps/practica06/#soluciones
                          
          4.2. Grafos.
                   4.2.1. Definición.
                           Definiciond de Grafos (41739 bytes)
                           http://es.wikipedia.org/wiki/Grafo_(estructura_de_datos)
                           http://es.wikipedia.org/wiki/Teor%C3%ADa_de_grafos#Definiciones
                          
                   4.2.2. Tipos de grafos.
                           Tipos de grafos y definiciones (130536 bytes)
                           Tipos de grados_2 (108695 bytes)
                           Tipos de grafos (222208 bytes)
                           Grafos no dirigidos (235008 bytes)
                          
                   4.2.3. Representación de grafos en memoria.
                           Lista de adyacencia (86588 bytes)
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/74.htm
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/75.htm
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/76.htm
                           http://sistemas.itlp.edu.mx/tutoriales/estru1/73.htm
                          
                   4.2.4. Clases para la implementación de grafos.
                           cpp de camino minimo (24064 bytes)
                           Ejemplo de clases (4914 bytes)
                           http://www.it.uc3m.es/~tsps/practica07/
                          

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

Cronogramas (20232024P)
Grupo Actividad Fecha Carrera

Temas para Segunda Reevaluación