Download sílabo - Cybertesis URP

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Transcript
UNIVERSIDAD RICARDO PALMA
FACULTAD DE INGENIERÍA
ESCUELA DE INGENIERÍA INFORMÁTICA
SÍLABO
AÑO ACADÉMICO 2008-I
PLAN DE SESIÓN DE APRENDIZAJE
I. DATOS GENERALES
Nombre del curso
Código del curso
Créditos
Naturaleza del curso
Número de horas de teoría
Número de horas de práctica
Número de horas de laboratorio
Requisitos
Profesores
:
:
:
:
:
:
:
:
:
Estructura de Datos y Algorítmica
IF 0405
3
Teórico - práctico
2
2
3
II0306 - II0303
Augusto Vega, Vera Virginia, Tamayo Carlos,
Zamora Oswaldo, Guzmán Amancio
II. SUMILLA
El curso de Estructuras de Datos y Algorítmica corresponde al IV ciclo de formación de la Escuela Académico
Profesional de Ingeniería Informática. El curso es de naturaleza teórico-práctica y brinda a los participantes los
conocimientos y habilidades para la resolución de problemas complejos mediante programas de computador
utilizando eficazmente estructuras de datos y algoritmos. Las unidades de aprendizaje son: análisis de
algoritmos y abstracción de datos; recursividad; los TDA lista, pila y cola; tablas de dispersión de tipo abierta,
el TDA conjunto, árboles binarios, árboles n-arios y grafos.
III. COMPETENCIAS DE LA CARRERA
Desarrolla y mantiene sistemas de software confiables y eficientes y que sea económico desarrollarlos y
mantenerlos y que satisfagan los requisitos definidos por los clientes.
IV. COMPETENCIA DEL CURSO
1. Emplea el análisis de algoritmos y la abstracción de datos para solucionar problemas eficazmente.
2. Diseña e implementa algoritmos para la solución de problemas utilizando recursividad.
3. Diseña e implementa TDAs listas y listas específicas (pilas y colas) para la solución de problemas.
4. Diseña e implementa tablas de dispersión para la solución de problemas.
5. Diseña e implementa TDAs conjuntos para la solución de problemas.
6. Diseña e implementa algoritmos para la solución de problemas que proceden sobre árboles, ya sean binarios
o n-arios.
7. Diseña e implementa grafos para la solución de problemas.
.
V. RED DE APRENDIZAJE
Análisis de algoritmos y
Abstracción de Datos
aplica
aplica
aplica
Árboles
Listas, Pilas
y Colas
Recursividad
aplica
usa
Tablas de
Dispersión
usa
usa
usa
usa
Conjuntos
usa
usa
Grafos
VI.
UNIDADES DE APRENDIZAJE
Unidad de aprendizaje 1: Análisis de Algoritmos y Abstracción de Datos
Competencia: Emplea el análisis de algoritmos y la abstracción de datos para solucionar problemas
eficazmente.
Sesión / Temas
Actividades
Análisis de algoritmos y abstracción de datos:
 Problemas y programas de computador.
 Algoritmos y el proceso de la obtención de la solución de Exposición del
los problemas.
profesor. Ejercicios
 Tipos de datos primitivos, tipos de datos abstractos simples de ejemplo.
(TDA) y estructuras de datos.
Fecha /
Semana
1
Análisis de algoritmos y abstracción de datos:
 Medición del tiempo de ejecución de un programa.
 Notación O mayúscula.
 Velocidad de crecimiento de los programas.
 Cálculo del tiempo de ejecución de un programa.
Exposición del
profesor. Ejercicios
simples de ejemplo.
2
Unidad de aprendizaje 2: Recursividad
Competencia: Diseña e implementa algoritmos para la solución de problemas utilizando recursividad.
Sesión / Temas
Recursividad:
 Concepto de recursividad. Problemas recursivos y
soluciones recursivas. Condiciones de terminación de la
recursión. La recursión frente a la iteración y los problemas
de la recursión. La recursión de cola. Eliminación de la
recursión de cola. Recursión directa e indirecta. Uso de
funciones auxiliares en la resolución de funciones
recursivas.
 Resolución de problemas recursivos de mediana
complejidad.
Recursividad:
 Resolución de problemas recursivos de mediana y alta
complejidad.
Recursividad:
 Resolución de problemas recursivos de alta complejidad.
Actividades
Fecha /
Semana
Exposición y discusión
con el profesor.
Ejercicios en Java y
seudo código.
3
Exposición y discusión
con el profesor.
Ejercicios en Java y
seudo código.
Exposición y discusión
con el profesor.
Ejercicios en Java y
seudo código.
4
5
Unidad de aprendizaje 3: El TDA Lista y listas específicas
Competencia: Diseña e implementa TDAs listas y listas específicas (pilas y colas) para la solución de
problemas.
Sesión / Temas
El TDA Lista:
 Definición del TDA Lista.
 Implementación de listas mediante arreglos.
 Implementación de listas mediante nodos enlazados.
El TDA Lista:
 Listas circulares simplemente enlazadas.
Actividades
Exposición y discusión
con el profesor.
Ejercicios en Java y
seudo código.
Exposición y discusión
con el profesor.
Ejercicios en Java y
seudo código.
Fecha /
Semana
6
7
EXAMEN PARCIAL
8
Exposición y discusión
Listas específicas:
con el profesor.
 Pilas y colas: Definición e implementación a partir de la
Ejercicios en Java y
reutilización de listas circulares.
seudo código.
9
Unidad de aprendizaje 4: Tablas de dispersión
Competencia: Diseña e implementa tablas de dispersión para la solución de problemas.
Sesión / Temas
Actividades
Fecha /
Semana
Tablas de dispersión:
 Definición de la estructura de datos Tabla de Dispersión
(TD).
 Tabla de dispersión de tipo abierta.
 Implementación de tablas de dispersión de tipo abierta con
el uso de claves.
Exposición y discusión
con el profesor.
Ejercicios en Java y
seudo código.
10
Unidad de aprendizaje 5: Conjuntos
Competencia: Diseña e implementa TDAs conjuntos para la solución de problemas.
Sesión / Temas
Actividades
Exposición y discusión
El TDA Conjunto:
 Definición del TDA Conjunto.
con el profesor.
 Implementación de conjuntos a través de la reutilización de Ejercicios en Java y
tablas de dispersión.
seudo código.
Fecha /
Semana
11
Unidad de aprendizaje 6: Árboles
Competencia: Diseña e implementa algoritmos para la solución de problemas que proceden sobre
árboles, ya sean binarios o n-ários.
Sesión / Temas
Actividades
Árboles binarios:
 Definición. Creación y recorrido.
 Resolución de problemas que proceden sobre árboles
binarios.
Árboles n-arios:
 Definición. Creación y recorrido.
 Resolución de problemas que proceden sobre árboles narios.
Exposición y discusión
con el profesor.
Ejercicios en Java y
seudo código.
Exposición y discusión
con el profesor.
Ejercicios en Java y
seudo código.
Fecha /
Semana
12
13
Unidad de aprendizaje 7: Grafos
Competencia: Diseña e implementa grafos para la solución de problemas.
Sesión / Temas
Grafos:
 Grafos. Definición e implementación del TDA Grafo.
 Operaciones sobre grafos.
 Representación matricial de grafos.
Grafos:
Actividades
Fecha /
Semana
Exposición y discusión
con el profesor.
Ejercicios en Java y
seudo código.
14
Exposición y discusión
 Representación enlazada de grafos.
con el profesor.
 Operaciones sobre grafos representados de manera Ejercicios en Java y
seudo código.
enlazada.
EXAMEN FINAL
15
16
EXAMEN SUSTITUTORIO
17
VII. METODOLOGÍA
La metodología del curso está estrictamente orientada a la adquisición de conocimientos básicos y, sobre todo,
de habilidades, por lo cual los temas teóricos son reforzados en gran medida por ejercicios resueltos en la
misma clase y en el laboratorio. El profesor expondrá inicialmente los temas teóricos y proseguirá con el
desarrollo de ejercicios, los cuales irán progresivamente incrementando su dificultad.
VIII. EVALUACIÓN


Los criterios que se usarán para la evaluación de los alumnos:
o
Habilidades adquiridas y demostradas en el laboratorio para la aplicación de los temas del curso.
o
Nivel de aprendizaje en el laboratorio.
La nota final será la resultante de la siguiente fórmula:
PF = ((EP + EF)/2)*0.70 + ((PL1+PL2+PL3+PL4+PL5+PL6+PL7)/6)*0.30
EP = examen parcial
EF = examen final
PLi = i-ésimo laboratorio calificado
IX. Bibliografía.
Análisis
de
algoritmos
“Data Structures &
Algorithms in Java”
Robert Lafore ISBN: 1571690956
Ed. Sams 1998,
“Estructuras de datos y
algoritmos”,
Alfred V. Aho, John E.
Hopcroft & Jeffrey D. Ullman,
ED. Addisson-Wesley
Iberoamericana, 1988
“Curso de Pascal”,
Augusto Vega P.
ED. Fondo Editorial P.U.C.P,
1998
“Tutor de Java, Tipo ‘links’,
v1.0”,
Augusto Vega P.
ED. 2004
http://www.netbeans.org
Recursividad
Listas
Tablas de
dispersión
X
X
X
X
X
X
Conjuntos
X
X
X
X
X
X
X
X
X
X
Árboles
Grafos
X
X
X
X
X
X
M.secundaria
X
X
X
X