Ed - I - 8362 - Programa Analítico de Asignatura

Descargar como doc, pdf o txt
Descargar como doc, pdf o txt
Está en la página 1de 11

UNIVERSIDAD TECNOLÓGICA DE PANAMÁ

FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES


DEPARTAMENTO DE COMPUTACIÓN Y SIMULACIÓN DE SISTEMAS

1. IDENTIFICACIÓN DE LA ASIGNATURA.

DENOMINACIÓN DE LA ASIGNATURA: ESTRUCTURA DE DATOS I


Nº. DE HORAS HORAS DE
CÓDIGO DE ASIGNATURA: 8362 CANTIDAD DE CRÉDITOS: 4 3 2
TEÓRICAS: LABORATORIO:
PRERREQUISITOS: ÚLTIMA
TOTAL DE HORAS: 5
Herramientas de Programación Aplicada I
 FUNDAMENTAL
REVISIÓN: 2007

2. DESCRIPCIÓN DE LA ASIGNATURA.
El curso de Estructura de Datos I (8362) está dividido en tres (2) módulos, agrupando cinco capítulos que orientan el procesamiento
de las estructuras de datos, partiendo de lo más simple a lo más complejo.

Módulo I: Estructuras de datos básicas y lineales. Se caracterizan las estructuras de datos primitivas,
simples y lineales utilizadas en la solución de problemas de programación y los algoritmos
funcionales utilizados en su implementación mediante lenguajes de programación.
Módulo II: Estructuras dinámicas de datos. Se internaliza el concepto de memoria dinámica y cómo las listas
enlazadas utilizan esta característica en su implementación y manejo eficiente de los recursos. Se
estudia, además, el concepto de recursividad aplicado a estructuras de datos lineales.
Este curso otorga al participante cuatro (4) créditos, y tiene una asignación de tres (3) horas de teoría y dos (2) horas de laboratorio
semanales. Se imparte en el primer semestre del segundo año de la carrera de Licenciatura en Ingeniería de Sistemas y
Computación. Tiene como pre-requisito que los socios y socias de aprendizaje hayan aprobado el curso de Herramientas de
Programación Aplicada I, que se ofrece durante el segundo semestre de esta carrera, y es pre-requisito para el curso de Estructura
de Datos II y para el curso de Inteligencia Artificial, ubicados en el segundo semestre de segundo año y primer semestre de tercer
año, respectivamente.
3. OBJETIVOS:

 Generales:

1. Utilizar las estructuras de datos que resulten más adecuadas en la solución de problemas de programación,
aplicando los algoritmos apropiados para su procesamiento eficiente.
2. Identificar las estructuras de datos básicas y lineales utilizadas en la resolución de problemas de programación
y los algoritmos para su adecuada implementación mediante un lenguaje de programación.
3. Internalizar el concepto de programación dinámica y el procesamiento de las estructuras de datos que la
soportan, como las listas, árboles y grafos, los métodos o procedimientos para su implementación y la solución
de problemas afines.

 Específicos

1. Distinguir las estructuras de datos primitivas y simples, caracterizándolas de acuerdo con su implementación en
al menos dos lenguajes de programación.
2. Construir programas con base en algoritmos de solución de problemas de programación, utilizando las
estructuras de datos primitivas y simples, que ejecuten de manera funcional.
3. Distinguir las estructuras de datos dinámicas y las estáticas, caracterizándolas de acuerdo con su
implementación y manejo de la memoria.
4. Construir programas eficientes que implementen los procedimientos para el manejo de las estructuras de datos
lineales estáticas y dinámicas (creación y borrado de la estructura; búsqueda, inserción, eliminación y
modificación de elementos específicos dentro de la estructura) utilizando lenguajes de programación conocidos.
5. Construir programas con base en algoritmos recursivos para la solución de problemas de programación
selectos, que ejecuten de manera funcional.
4. ESTRUCTURA PROGRAMÁTICA

OBJETIVO GENERAL DE LA ASIGNATURA / CURSO:


 Utilizar las estructuras de datos que resulten más adecuadas en la solución de problemas de programación, aplicando los algoritmos apropiados para su
procesamiento eficiente.
TITULO DEL MÓDULO: OBJETIVOS DEL MÓDULO:
1. Identificar las estructuras de datos básicas y lineales utilizadas en la resolución de
MÓDULO I. ESTRUCTURAS DE DATOS BÁSICAS Y LINEALES problemas de programación y los algoritmos para su adecuada implementación mediante un
lenguaje de programación.
TITULO DE LA UNIDAD: OBJETIVOS DE LA UNIDAD:
2. Distinguir las estructuras de datos primitivas y simples, caracterizándolas de acuerdo con su
implementación en al menos dos lenguajes de programación.
ESTRUCTURAS DE DATOS BÁSICAS
3. Construir programas con base en algoritmos de solución de problemas de programación,
utilizando las estructuras de datos primitivas y simples, que ejecuten de manera funcional.
RESULTADOS DE
CONTENIDOS ESTRATEGIAS RECURSOS TIEMPO EVALUACIÒN
APRENDIZAJES
 Evaluación Diagnóstica :
 Definir el concepto I. ESTRUCTURAS DE DATOS  Presentación del  Material didáctico 30 horas – Interrogatorio sobre
internalizado de tipos FUNDAMENTALES tema,  Diapositivas (Cinco horas por el concepto
de datos. 1.1 Definición y conceptos básicos  Exposición  Tablero blanco semana; seis internalizado de
1.2 Estructuras de datos primitivas dialogada  Marcadores semanas) estructura de datos,
 Describir los 1.2.1 Enteros  Técnica de la  Borrador y uso de la memoria
diferentes tipos de 1.2.2 Reales demostración  Proyector durante la ejecución
estructuras de datos. 1.2.3 Caracteres  Prácticas en el multimedios de un programa.
1.2.4 Booleanos aula  Equipos
 Discriminar las 1.3 Estructuras de datos simples  Lluvia de ideas informáticos  Evaluación Formativa:
estructuras de datos 1.3.1 Cadenas  Estrategia SQA  Herramientas – Práctica de las
de acuerdo a su tipo. 1.3.2 Arreglos  Técnica del informáticas. estructuras de datos
1.3.3 Registros interrogatorio simples
 Programar soluciones 1.3.4 Conjuntos  Resolución
informáticas que estructurada de  Evaluación Sumativa:
requieran el uso de problemas – Tareas
estructuras de datos  Orientación y – Laboratorios
simples. retroalimentación – Examen parcial
OBJETIVO GENERAL DE LA ASIGNATURA / CURSO:
 Utilizar las estructuras de datos que resulten más adecuadas en la solución de problemas de programación, aplicando los algoritmos apropiados para su
procesamiento eficiente.
TITULO DEL MÓDULO: OBJETIVOS DEL MÓDULO:
1. Identificar las estructuras de datos básicas y lineales utilizadas en la resolución de
MÓDULO I. ESTRUCTURAS DE DATOS BÁSICAS Y LINEALES problemas de programación y los algoritmos para su adecuada implementación mediante un
lenguaje de programación.
TITULO DE LA UNIDAD: OBJETIVOS DE LA UNIDAD:
1. Construir programas eficientes que implementen los procedimientos para el manejo de las
estructuras de datos lineales (creación y borrado de la estructura; búsqueda, inserción,
ESTRUCTURAS DE DATOS LINEALES
eliminación y modificación de elementos específicos dentro de la estructura) utilizando
lenguajes de programación conocidos.
RESULTADOS DE
CONTENIDOS ESTRATEGIAS RECURSOS TIEMPO EVALUACIÒN
APRENDIZAJES

 Definir el concepto de II. ESTRUCTURAS DE DATOS  Exposición  Material didáctico 20 horas  Evaluación Formativa:
estructura de datos LINEALES dialogada  Diapositivas (Cinco horas por – Práctica en el aula
tipo pila. 2.1 Introducción  Técnica de la  Tablero blanco semana; cuatro de las estructuras de
2.2 Pilas demostración  Marcadores semanas) datos lineales
 Resolver problemas 2.2.1 Operaciones sobre pilas  Prácticas en el  Borrador
que utilicen los 2.2.2 Implementación de pilas aula  Proyector  Evaluación Sumativa:
algoritmos para el 2.2.3 Ejemplos  Lluvia de ideas multimedios – Tareas
manejo de pilas.. 2.3 Colas  Estrategia SQA  Equipos – Laboratorios
2.3.1 Operaciones sobre colas  Técnica del informáticos – Proyectos
 Definir el concepto de 2.3.2 Implementación de colas interrogatorio  Herramientas – Examen parcial
estructura de datos 2.3.3 Ejemplos  Resolución informáticas.
tipo cola. estructurada de
problemas
 Resolver problemas  Orientación y
que utilicen los retroalimentación
algoritmos para el
manejo de colas.
OBJETIVO GENERAL DE LA ASIGNATURA / CURSO:
 Utilizar las estructuras de datos que resulten más adecuadas en la solución de problemas de programación, aplicando los algoritmos apropiados para su
procesamiento eficiente.
TITULO DEL MÓDULO / UNIDAD: OBJETIVOS DEL MÓDULO / UNIDAD:
1. Internalizar el concepto de programación dinámica y el procesamiento de las estructuras de
MÓDULO II. ESTRUCTURAS DINÁMICAS DE DATOS datos que la soportan, como las listas, árboles y grafos, los métodos o procedimientos para
su implementación y la solución de problemas afines.
TITULO DE LA UNIDAD: OBJETIVOS DE LA UNIDAD:
1. Construir programas eficientes que implementen procedimientos recursivos para el manejo
CONCEPTO DE RECURSIVIDAD
de las estructuras lineales que ejecuten de manera funcional.
RESULTADOS DE
CONTENIDOS ESTRATEGIAS RECURSOS TIEMPO EVALUACIÒN
APRENDIZAJES

 Definir el concepto de III. CONCEPTO DE RECURSIVIDAD  Exposición  Material didáctico 10 horas  Evaluación Formativa:
recursividad desde el 4.1 Recursividad dialogada  Diapositivas (Cinco horas por – Práctica de las
punto de vista de la 4.1.1 Introducción  Técnica de la  Tablero blanco semana; dos estructuras de datos
programación. 4.1.2 Programación recursiva demostración  Marcadores semanas) dinámicas
 Aplicar 4.1.3 Procedimiento recursivo  Prácticas en el  Borrador
procedimientos 4.1.4 Ejemplos aula  Proyector  Evaluación Sumativa:
recursivos en la  Prácticas en el multimedios – Tareas
solución de problemas laboratorio  Equipos – Laboratorios
de programación que  Orientación y informáticos – Proyectos
utilicen estructuras retroalimentación  Herramientas – Investigación
dinámicas de datos..  Lluvia de ideas informáticas. – Examen parcial
 Estrategia SQA
 Resolución
estructurada de
problemas

OBJETIVO GENERAL DE LA ASIGNATURA / CURSO:


 Utilizar las estructuras de datos que resulten más adecuadas en la solución de problemas de programación, aplicando los algoritmos apropiados para su
procesamiento eficiente.
TITULO DEL MÓDULO: OBJETIVOS DEL MÓDULO:
1. Internalizar el concepto de programación dinámica y el procesamiento de las estructuras de
MÓDULO II. ESTRUCTURAS DINÁMICAS DE DATOS datos que la soportan, como las listas, árboles y grafos, los métodos o procedimientos para
su implementación y la solución de problemas afines.
TITULO DE LA UNIDAD: OBJETIVOS DE LA UNIDAD:
1. Distinguir las estructuras de datos dinámicas y las estáticas, caracterizándolas de acuerdo a
su implementación y manejo de la memoria.
ESTRUCTURAS DE DATOS DINÁMICAS LINEALES
2. Construir programas con base en algoritmos de solución de problemas de programación,
utilizando las estructuras de datos dinámicas, que ejecuten de manera funcional.
RESULTADOS DE
CONTENIDOS ESTRATEGIAS RECURSOS TIEMPO EVALUACIÒN
APRENDIZAJES

 Contrastar el concepto IV. ESTRUCTURAS DE DATOS  Exposición  Material didáctico 20 horas  Evaluación Formativa:
de estructura DINÁMICAS LINEALES dialogada  Diapositivas (Cinco horas por – Práctica del
dinámica versus las 3.1 Variables punteros  Técnica de la  Tablero blanco semana; cuatro comportamiento de
estructuras estáticas 3.1.1 Asignación dinámica de demostración  Marcadores semanas) las estructuras
memoria  Prácticas en el  Borrador dinámicas y el
 Describir cómo 3.1.2 Utilización de variables aula  Proyector manejo dinámico de
funciona la asignación puntero  Prácticas en el multimedios la memoria
dinámica de memoria 3.1.3 Ejemplos laboratorio  Equipos  Evaluación Sumativa:
3.2 Listas enlazadas  Orientación y informáticos – Tareas
 Definir el concepto de 3.2.1 Introducción retroalimentación  Herramientas – Laboratorios
lista enlazada. 3.2.2 Operaciones básicas  Resolución informáticas. – Proyectos
3.2.3 Implementación estructurada de – Examen parcial
 Explicar las variantes 3.2.4 Ejemplos problemas
de una lista enlazada, 3.3 Variantes de las listas enlazadas  Lluvia de ideas
enumerando los 3.3.1 Listas circulares  Estrategia SQA
componentes 3.3.2 Listas circulares con nodo
diferenciadores de cabecera
cada una. 1.3.3 Listas doblemente
enlazadas
1.3.4 Algoritmos y aplicaciones
5. CRITERIOS Y PORCENTAJES DE EVALUACIÓN

CRITERIOS DE EVALUACIÓN PORCENTAJE


Asistencia y Participación en clase 5%
Portafolio del estudiante 5%
Tareas, ejercicios cortos, laboratorios 10%
Proyectos, investigaciones 15%
Exámenes parciales 30%
Examen semestral 35%
Total: 100%

6. MÉTODO DE EVALUACIÓN

Se realiza una evaluación con base en los siguientes parámetros:


 Es obligatoria la asistencia a clases.
 Se evalúa de forma continua, durante los horarios asignados a las clases y en los plazos indicados, la
realización, individual o en grupos de dos o más alumnos, de las tareas, laboratorios y proyectos
propuestos.
 También se aplicará la realización individual de ejercicios los cuales se entregarán por escrito en el plazo
que se indique.
 Se podrá, además, valorar la exposición de trabajos en clases, así como el desempeño en los laboratorios y
proyectos asignados durante el curso.
 Se podrán realizar pruebas escritas sobre los contenidos de la materia como complemento de la evaluación
y/o en caso de que los procedimientos anteriores no puedan ser aplicados.
 Para aprobar la asignatura es indispensable realizar las tareas, laboratorios y proyectos en los plazos
indicados; además, los ejercicios escritos y el resto de las actividades que permitan ponderar la nota final.
7. MÉTODO DOCENTE SUGERIDO

En el presente apartado se procede a exponer de manera más detallada los contenidos del programa sintético, la
bibliografía utilizada en la preparación de cada tema y que el alumno deberá consultar y utilizar para la ampliación de los
contenidos y/o la realización de trabajos.

TÉCNICA DIDÁCTICA:
 Sesiones teóricas/expositivas/magistrales de carácter presencial para la presentación de los contenidos
teóricos de la asignatura y fundamentos básicos para el desarrollo adecuado del resto de actividades formativas.
Cubre las competencias específicas de conocimiento.
 Sesiones Prácticas, organizadas en distintos grupos de trabajo con un número adecuado de alumnos para poder
desarrollar y aplicar a situaciones concretas los fundamentos y conceptos básicos presentados en las sesiones
teóricas. Cubre las competencias específicas de habilidad. Las sesiones prácticas se desarrollarán en la forma de:
– Discusión y resolución de casos prácticos.
– Presentación y argumentación de trabajos de investigación.
– Desarrollo de talleres y trabajos de campo individuales y grupales.
 Sesiones de tutorización y seguimiento personalizado del alumno que permita su orientación en el
desarrollo de la asignatura y en la preparación de los trabajos individuales que fueron solicitados. Cubre todas las
competencias. Las sesiones de tutorización se desarrollarán de la siguiente forma:
– Tutorías de clases teóricas en aula.
– Tutorías de clases prácticas.
– Trabajos académicos dirigidos.
 Trabajo del alumno relacionado con las sesiones teóricas/prácticas/tutorización de carácter no presencial.
Se evalúa con el desarrollo del portafolio. Cubre todas las competencias Este trabajo se desarrollará en la forma
de:
– Lectura de documentación/material de la asignatura.
– Búsqueda y lectura de documentación complementaria.
– Acceso y consulta a fuentes que recopilen información del curso.
– Realización de trabajos individuales y en grupo.
– Resolución de laboratorios y proyectos.
– Trabajo del alumno relacionado con la preparación y realización del examen final de la asignatura.
A continuación, desarrollaremos las técnicas docentes utilizadas en cada actividad, seleccionadas de acuerdo con el
diagnóstico previo de la situación, perfil de los alumnos, recursos disponibles y el número de estudiantes quienes
interactuarán en cada una de estas actividades.

PRESENTACIÓN DE LA ASIGNATURA:
La primera clase se destinará a la presentación de la asignatura, y se entregará a los alumnos, el programa analítico del
curso con su respectiva programación semestral.
Para los casos prácticos, talleres y trabajos de campo, se proporcionará el enunciado y la rúbrica de evaluación con el fin
de que los alumnos procedan a resolverlos. Además, para la realización del trabajo individual se les entregarán a los
estudiantes, los ejercicios o enunciados correspondientes, con sus respectivas fuentes de consulta y el procedimiento
que deben seguir para la resolución y las rúbricas de evaluación y presentación.
Asimismo, se les comentará el sistema de evaluación y la estructura organizativa de las clases presenciales, las cuales
requieren que el estudiante posea el conocimiento previo.

CLASES TEÓRICAS:
El método docente empleado en las clases teóricas se fundamentará en la técnica expositiva cuya finalidad es facilitar la
información a los alumnos, promover la comprensión de conocimientos y estimular su motivación. La aplicación de esta
técnica viene determinada por el número de alumnos que asistirán a ellas, aproximadamente 20 por grupo. Se
corresponderán con sesiones explicativas basadas en esquemas y resúmenes que permitan reducir el tiempo de
exposición.
Asimismo, con el fin de generar un mayor dinamismo, en determinadas sesiones se introducirán (a) debates con la
finalidad de que el alumno desarrolle aspectos meta cognitivos como la reflexión o el intercambio de puntos de vista y
conocimientos; (b) la realización de evaluaciones formativas que consistirán en responder preguntas sobre los
indicadores básicos del contenido y las competencias; o (c) en los minutos finales de las clase, se aplicarán herramientas
orientadas a evaluar el nivel de atención del alumno como El punto más confuso, Resumen en 12 palabras y el
parafraseo dirigido, donde el estudiante debe destacar los puntos principales que han sido tratados en un minuto de
tiempo, una frase o un párrafo.
Estos métodos y técnicas permitirán corregir las debilidades asignadas a las clases teóricas como son: la pasividad y
falta de participación del estudiante; la reflexión sobre el aprendizaje; el diferente ritmo docente/estudiante; el desinterés
del alumnado por la búsqueda de información; y la ausencia de responsabilidad del estudiante sobre su propio proceso
de formación.
CLASES PRÁCTICAS:
Permitirán guiar al alumno en la aplicación de los conocimientos adquiridos, lo que generará en el desarrollo de las
competencias relacionadas con su futura actividad profesional. En estas clases, los participantes podrán resolver las
dudas que les hayan surgido en el proceso de aprendizaje. Para ello, la mecánica empleada se fundamentará en la
ejecución de laboratorios y proyectos, a partir de las propuestas del docente, que permitan a los estudiantes aplicar los
conceptos teóricos en la práctica.
Esta estructuración facilitará, desde el punto de vista del estudiante, adquirir los conocimientos y destrezas para el
manejo adecuado de las diferentes estructuras de datos, así como determinar la estructura más apropiada para plantear
la solución de un problema; desde el punto de vista del profesorado, comprobar si los estudiantes han comprendido los
conceptos básicos y , en caso contrario, profundizar en aquellas cuestiones que demanden mayores explicaciones.

TUTORÍAS GRUPALES:
Como consecuencia del número de alumnos en nuestra especialidad, las tutorías se han concebido de carácter grupal,
entre 2 y 4 estudiantes. Estas tutorías están destinadas a orientar y evaluar el trabajo individual de los alumnos
relacionados con determinados conocimientos básicos de la comunicación.
Basados en la metodología adoptada, que fomenta el aprendizaje autónomo, el alumno debe resolver problemas
asociados a situaciones reales que le permitirán adquirir distintas destrezas; además, habilidades relacionadas con la
resolución creativa de problemas no estructurados en situaciones desconocidas. Asimismo, le proporciona medios para
desarrollar determinados conocimientos y habilidades sobre la complejidad del ámbito profesional lo que, posteriormente,
le facilitará el acceso al mundo laboral.

8. SOPORTES RECOMENDADOS EN EL AULA

 Material del instructor.


 Bibliografía complementaria.
 Tablero blanco
 Marcadores.
 Medios audiovisuales
 Equipos informáticos
 Herramientas informáticas

9. SOPORTES RECOMENDADOS EN LAS SESIONES PRÁCTICAS


 Tablero blanco
 Marcadores
 Transparencias
 Medios audiovisuales
 Equipos informáticos
 Herramientas informáticas

10.SOPORTES RECOMENDADOS EN EL LABORATORIO

En las sesiones de laboratorios, se hará uso de lenguajes de programación como: C, C++ y Java, para implementar
los algoritmos estudiados en clases y plantear soluciones a problemas selectos propuestos por la docente.

11.REFERENCIAS BIBLIOGRÁFICAS

 Joyanes Aguilar, Luis y Zahonero Martínez (1998). Estructura de datos. Algoritmos, abstracción y objetos (1ra ed.).
Madrid, España: McGraw-Hill Interamericana de España, S.A.
 ______________ (2000). Programación en algoritmos, estructuras de datos y objetos (1ra ed.). Madrid, España:
McGraw-Hill Interamericana de España, S.A.
 Koffman, Elliot B. y Wolfgang, Paul A. T. (2008). Estructura de datos con C++. Objetos, abstracciones y diseño (1ra ed.).
Madrid, España: McGraw-Hill Interamericana Editores, S.A. de C. V.
 Langsam, Yedidyah et al (1997). Estructura de datos con C y C++ (2a ed.). México: Prentice Hall.
 Lipschutz, Seymour (1994). Estructura de Datos (2a reimpresión.). México: McGraw-Hill Interamericana de México, S.A.
 Martí Oliet, Narciso et al (2004). Estructuras de datos y métodos algorítmicos. Ejercicios resueltos. España: Pearson-
Prentice Hall.
 Nyhoff, Larry R. (2005). TADs, Estructura de datos y resolución de problemas con C++. España: Pearson-Prentice Hall.
 Staugaard, Andrew C., Jr (1998). Técnicas estructuradas y orientadas a objetos. Una introducción utilizando C++ (2ª
ed.). México: Prentice-Hall Interamericana, S.A.

También podría gustarte