ESTRUCTURA DE DATOS, LABORATORIO
SEMANA ESTRUCTURA DE DATOS LABORATORIO
OBJETIVO MAPA CONCEPTUAL OBJETIVO MAPA CONCEPTUAL
1 Reforzar los conceptos de la programación orientada a objetos. Conceptos básicos de programación orientada a objetos:
•Concepto de clase: atributos y métodos.
•Objetos: instancias de las clases.
•Método principal.
•Herencia
•Polimorfismo
Encapsulamiento, entre otros
Aprender cómo se escribe un programa fuente tomando como base TODA la orientación a objetos. Estructura de clase
•Constructores
•Métodos
•herencia
Utilización de varias clases en la solución de problemas
2,3 Repasar las estructuras de datos, capaces de almacenar colecciones de datos del mismo tipo. Estructuras estáticas:
Concepto de arreglos. Algoritmos con arreglos (unidimensionales y multidimensionales), métodos y una sola clase
Realizar programas que hagan uso de los vectores y las matrices. Estructura ARRAY:
•Propiedades y métodos de la estructura ARRAY
•Declaración e instancia de vectores y matrices.
•Uso de matrices y vectores. Repaso de Técnicas de Ordenamiento: Burbuja, Selección, Inserción, Shell, Mezcla, etc.
Programas sobre manejo de arreglos, que involucren varias clases.
4 Aprender todos los conceptos relacionados con pila. Estructura pila:
•Definición de pila
•Métodos principales apilar (Push), desapilar (pop)
•Recursión (expresión infija, postfija y prefija)
•Representación de las pilas, concepto de Pila como vector y pila como lista.
Implementar programas que creen y utilicen la clase pila Declaración e instancia de pilas.
•Propiedades y métodos de la estructura
•Pila crear
•Apilar
•Desapilar
Utilización de la clase pila en problemas prácticos y cotidianos
5 Aprender todos los conceptos relacionados con colas. Estructura cola:
•Definición de cola
•Métodos principales encolar (inserta cola), desencolar (elimina cola)
Representación de las colas, concepto de cola como vector y cola como lista.
Implementar programas que creen y utilicen la clase cola. Declaración e instancia de colas.
•Propiedades y métodos de la estructura
•Cola crear
•Encolar
•Desencolar
•Utilización de la clase cola en problemas prácticos y cotidianos
6,7 Diferenciar el manejo de memoria dinámica y memoria estática, mediante el uso de apuntadores. Introducción a la memoria Dinámica.
•Concepto de apuntador a memoria
•Concepto de: Nodo
•Concepto de lista simplemente ligada o enlazada
•Operaciones con listas simplemente ligadas
oCreación
oInserción
oBorrado
oBúsqueda
oOrganización
Otras operaciones
Implementar en un programa el uso de apuntadores, con la creación de listas simples. Declaración de nodos y apuntadores
•Implementación de la clase lista simplemente ligadas
oCrear inicio
oCrear por el final
oRecorrido
oInserción
oBorrado
oBúsqueda
oOrganización
oOtras operaciones
Utilización de la clase lista_simple en problemas prácticos y cotidianos
8 Evaluación Acumulativa Práctica Acumulativa
9 Seguir con el aprendizaje de otras estructuras dinámicas que utilicen los apuntadores Concepto de lista doblemente ligada o enlazada
•Operaciones con listas doblemente ligadas
oCreación
oInserción
oBorrado
oBúsqueda
oOrganización
Otras operaciones
Realizar programas en cuya solución se pueda utilizar listas dobles Implementación de la clase lista doblemente ligada
oCrear inicio
oCrear por el final
oRecorrido
oInserción
oBorrado
oBúsqueda
oOrganización
oOtras operaciones
Utilización de la clase lista_doble en problemas prácticos y cotidianos
10 Seguir con el aprendizaje de otras estructuras dinámicas que utilicen los apuntadores Manejo de listas doblemente ligadas como pila. Implementación de la clase y sus métodos principales.
Manejo de listas doblemente ligadas como cola.
Implementación de la clase y sus métodos principales.
Realizar programas que utilicen el concepto de pila y cola con apuntadores. Implementación de la clase lista doblemente ligada como pila
oCrear
oapilar
odesapilar
oOtras operaciones
•Implementación de la clase lista doblemente ligada como cola
oCrear
oencolar
odesencolar
oOtras operaciones
Utilización de la clase lista_doble_pila, lista_doble_cola, en problemas prácticos y cotidianos.
11 Seguir con el aprendizaje de otras estructuras dinámicas que utilicen los apuntadores Concepto de lista doblemente ligada circular o enlazada
•Operaciones con listas doblemente ligadas circular
oCreación
oInserción
oBorrado
oBúsqueda
oOrganización
Otras operaciones
Realizar programas en cuya solución se pueda utilizar listas dobles circulares Implementación de la clase lista doblemente ligada circular
oCrear inicio
oCrear por el final
oRecorrido
oInserción
oBorrado
oBúsqueda
oOrganización
oOtras operaciones
Utilización de la clase lista_doble_circular en problemas prácticos y cotidianos
12 Aprender la organización jerárquica de los datos, mediante arboles. Definición de arboles
•Características y propiedades de los arboles
•Longitud de camino
Arboles binarios
Realizar programas que utilicen la estructura de arboles. Implementación de la clase nodo y árbol
oCrear árbol
oRecorrido en preorden
oRecorrido en inorden
oRecorrido en postorden
Utilización de la clase nodo-árbol en problemas prácticos y cotidianos
13, 14 Aprender a recorrer un árbol binario y reconocer la naturaleza recursiva de las operaciones con árboles... Arboles binarios
•Definición.
•Características de los arboles binarios
•Representación de los arboles binarios en memoria
•Recorrido de arboles binarios:
•Recorrido en preorden
•Recorrido en inorden
•Recorrido en postorden
•Operaciones con arboles binarios
oCreación
oInserción
oborrado
Realizar programas que utilicen la estructura de arboles. Implementación de la clase nodo y árbol
oCreación
oInserción
oborrado
Utilización de la clase nodo-árbol en problemas prácticos y cotidianos.
15 Utilizar las clases de entrada y salida para modelar problemas que requieran el manejo de información persistente. Archivos:
• Registro,
•Operaciones de lectura y escritura,
•acceso secuencial y acceso aleatorio
Búsqueda en archivos
Elaborar programas que utilicen los almacenamientos. Implementación de la clase archivo
oCreación
oInserción
oBorrado
oConsultar
Utilización de la clase archivo en problemas prácticos y cotidianos
16 Evaluación Final Práctica Final