SlideShare una empresa de Scribd logo
UNIVERSIDAD NACIONAL DE SANTIAGO DEL ESTERO
FACULTAD DE CIENCIAS EXACTAS Y TECNOLOGÍAS
LICENCIATURA EN SISTEMAS DE INFORMACIÓN
PROGRAMA DE CONTENIDOS
(Plan 2011)
EQUIPO CÁTEDRA
Msc. Ing. Rosa Palavecino – Profesor Asociado – SemiExclusivo
Esp. Ing. Analía Méndez – Profesor Adjunto – Exclusivo
Msc. Ing. Raquel Zarco – Jefe de Trabajos Prácticos - Exclusivo
ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013
Msc. Rosa Palavecino Página 1
SELECCIÓN Y ORGANIZACIÓN DE CONTENIDOS
Programa Sintético sobre la base de los contenidos mínimos
Unidad 1: Estructuras de datos básicos I
Introducción a las estructuras de datos. Estructura de datos encadenadas. Representación de datos
en memoria. Estrategias de implementación. Manejo de memoria en ejecución. Operaciones e
implementación. Algoritmos fundamentales: recorrido, ordenamiento, búsqueda y actualización.
Estrategia de diseño de algoritmos. Resolución de problemas y algoritmos.
Unidad 2: Estructura de Datos Avanzadas
Estructura de datos avanzadas. Recursividad. Características Tipo de datos recursivos. Árboles.
Grafos. Operaciones e implementación. Algoritmos recursivos. Algoritmos fundamentales:
recorrido, ordenamiento, búsqueda y actualización. Resolución de problemas y algoritmos.
Unidad 3: Algoritmos de Ordenamiento y Búsqueda
Ordenamiento y búsqueda: interna y externa. Algoritmos fundamentales. Resolución de problemas
y algoritmos.
Unidad 4: Archivos
Archivos. Organización secuencial. Organización de archivos relativos. Organización de archivos
indexados. Algoritmos fundamentales: recorrido, ordenamiento, búsqueda y actualización.
Resolución de problemas y algoritmos.
Unidad 5: Programación orientado a objetos
Paradigma Programación orientada a objetos. Objetos, clases, encapsulamiento, polimorfismo,
herencia. Eventos. Manejo de Excepciones. Lenguajes orientados a objetos. Resolución de
problemas y algoritmos.
Programa Analítico
Unidad I: Estructuras de Datos I
i) Introducción a las estructuras de datos: Introducción. Conceptos sobre tipos de datos.
Sistemas de Tipos. Almacenamiento en memoria. Abstracción en los lenguajes de programación:
abstracciones de control. Abstracciones de datos. Tipos abstractos de datos: ventajas,
implementación, especificación. Diferencia entre tipo de dato y TAD.
ii) Estructura de Datos Encadenadas: Estructura de datos dinámicas. Representación de datos
en memoria. Estrategias de implementación. Manejo de memoria en ejecución. Listas encadenadas:
concepto. Clasificación. TAD Lista. Algoritmos fundamentales con listas simples encadenadas:
creación, inserción, eliminación, actualización, búsqueda, recorrido. Lista Ordenada. Listas doble
encadenadas. Listas circulares. Pilas y colas. TAD pila, TAD cola. Operaciones y diferentes formas
de implementación. Colas de prioridades. Montículos. Bicolas. Estrategia de diseño de algoritmos.
Resolución de problemas y algoritmos.
Bibliografía recomendada: [Cairo, 2006]-[Joyanes, 2008]-[Joyanes, 2002]
Unidad II: Estructuras de Datos Avanzadas
i) Recursividad: Recursividad: definición y características. Requisitos para la recursión. Tipos de
datos recursivos. Algoritmos recursivos. Creación, seguimiento, convocatoria. Eficiencia de la
recursión. Resolución de problemas y algoritmos
ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013
Msc. Rosa Palavecino Página 2
ii) Árboles: Árboles generales. Conceptos básicos. Formas de representación. Árboles binarios:
terminología. TAD árbol binario. Árboles binario, lleno y completo. Algoritmos fundamentales de
recorrido, actualización, ordenamiento y búsqueda de árboles binarios. Árboles de búsqueda
binaria. Operaciones en árboles de búsqueda binaria. Árboles balanceados por su altura (AVL).
Inserción, eliminación. Rotación. Árboles balanceados por un límite. Árboles multicaminos:
Árboles B, Árboles B+
, operaciones básicas.
Resolución de problemas y algoritmos.
iii) Grafos: Grafos: conceptos y definiciones. TAD grafo. Métodos de Representación: matriz de
adyacencias, listas de adyacencia. Algoritmos fundamentales de: Recorrido de grafos: en amplitud,
en profundidad, comparaciones, Ordenación, Actualización y Búsqueda. Matriz de caminos:
algoritmo de Warshall. Caminos más cortos con un solo origen: Algoritmo de Dijkstra. Árboles de
expansión: Algoritmo de Kruskal. Algoritmo de Prim. Resolución de problemas y algoritmos.
Bibliografía recomendada: [Cairo, 2006]-[Joyanes, 2008]-[Joyanes, 2002]
Unidad III: Algoritmos de Ordenamiento y Búsqueda
i) Ordenamiento interno: concepto. Ordenación rápida (Quicksort). Ordenamiento por
apilamiento (Heapsort). Ordenamiento por mezcla (MergeSort). Ordenamiento topológico.
Resolución de problemas y algoritmos.
ii) Ordenamiento externo: concepto. Mezcla directa. Fusión natural. Mezcla equilibrada múltiple.
Método polifásico de ordenación externa.
iii) Búsqueda externa: búsqueda en archivos secuenciales. Búsqueda secuencial. Búsqueda
secuencial mediante bloques. Búsqueda secuencial con índices. Búsqueda Binaria. Búsqueda por
transformación de clave (hash). Soluciones de colisiones. Hashing dinámico: búsqueda dinámica
por transformación de claves. Método de las expansiones totales. Método de las expansiones
parciales. Listas invertidas. Multilistas. Resolución de problemas y algoritmos.
Bibliografía recomendada: [Cairo, 2006]-[Joyanes, 2008]
Unidades IV: Archivos
i) Archivos: Definiciones. Campos, registros, archivos, bases de datos. Estructura jerárquica.
Conceptos: claves, registro físico o bloque. Factor de bloqueo. Organización de archivos:
secuencial, directa, secuencial indexada. Modos de acceso. Operaciones sobre archivos: recorrido,
actualización, ordenamiento y búsqueda. Resolución de problemas y algoritmos.
Bibliografía recomendada: [Joyanes, 2002]-[DeGiusti, 2001]-[Joyanes, 2003]
Unidades V: Programación Orientado a objetos
i) Paradigma de Programación Orientado a objetos: Lenguajes orientados a objetos: sus
características. Conceptos básicos: Programación orientado a Objetos. Objeto. Clases.
Encapsulamiento y Abstracción. Herencia: tipos de herencia. Polimorfismo. Modularidad. Niveles.
Objetos: propiedades, estructura interna, atributos, métodos, mensajes. Instancia de un objeto.
Clase, estructura interna, diferencia entre clase y objeto. Eventos. Tipo de eventos. Entorno visual.
Excepciones: Manejo de Excepciones, Lanzamiento de Excepciones, Captura de Excepciones.
Estrategia de diseño de algoritmos. Resolución de problemas y algoritmos.
.Bibliografía recomendada:[[Joyanes, 2008]- [DeGiusti, 2001]- [Weiss, 2006]
ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013
Msc. Rosa Palavecino Página 3
Programa y Cronograma de Trabajos Prácticos
El desarrollo de los trabajos prácticos se realizará conforme el plan que se muestra en la siguiente
tabla.
Practico
nro.
Temas a desarrollar Fecha Cant.horas
0
Lenguaje de Programación Java -
Entorno de Programación (IDE)
NetBeans
18 al 24 de marzo 4
1
Programación Orientada a Objetos
(POO) – Arreglos - Pilas y Colas
estáticas.
25 de marzo al 19/4 16
2
Listas simple encadenadas. Manejo
de pilas y colas dinámicas.
22 de abril al 24 de mayo 20
3
Listas simple encadenadas - Listas
doble encadenadas- Listas
circulares
3 al 14 de junio 8
4 Recursividad 17 al 28 de junio 4
5 Árboles 12/8 al 6/9 16
6 Grafos 9 al 20/9 8
7 Archivos 23/9 al 8/11 36(1)
Total de horas prácticas y experimentales (1)
Incluye 6 hs de evaluación en
computador.
120 hs.
ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013
Msc. Rosa Palavecino Página 4
Programa y Cronograma de Actividades de Formación Experimental
Taller Lenguaje de Programación Java
Contenidos
Contenidos programáticos del Taller de Lenguaje Java
i) Programación Orientado a Objetos:
 Características Principales de Java. La maquina virtual Java. La plataforma Java. El JDK de Sun
 El lenguaje Java: Sintaxis, Comentarios, Identificadores, Operadores, Expresiones, Arrays,
Strings, Control de flujo. Objetos, Clases. Operador New, Constructores, Destrucción de
Objetos, Garbage Collector. Control de Acceso. Herencia y Subclases. Clase Object. Clases
Abstractas. Interfaces. Paquetes.
 Archivos en Java, entrada y salida, Paquete Java.io, Clase File, Manejo de Byte y Char, Acceso
de lectura, Acceso de escritura, Acceso aleatorio.
 Clases básicas, Clases de Java.lang, Clases utilitarias
 Excepciones, Manejo de Excepciones, Lanzamiento de Excepciones, Captura de Excepciones.
 Entorno visual. SWING Application
Bibliografía recomendada
 [Joyanes, 2008]
 [Joyanes, 2002]
 [Weiss, 2006]
 [Goodrich, 2002]
Objetivos
 Aplicar el paradigma de programación Orientado a Objetos.
 Capacidad para ejecutar correctamente programas en Lenguaje JAVA
 Adquirir destrezas fundamentales de programación que permitan la implementación de
algoritmos usando el lenguaje de programación Java
 Implementar programas en Lenguaje JAVA, usando herramientas de software libre en
diferentes plataformas
 Emplear reglas de estilo de programación y documentación de programas.
Metodología
Las clases serán teóricas y practicas, para lo cual se aplicaran métodos de resolución de ejercicios y
problemas planteados en los distintos trabajos prácticos de la asignatura, con el fin de afianzar los
conceptos teóricos, aclarar dudas y que el alumno alcance un buen desarrollo en su aprendizaje y se
desarrollarán en el Laboratorio de Informática.
Evaluación
La evaluación del Taller de lenguaje de programación Java, se realizará en los tres parciales
previstos en la asignatura, donde se solicitará codificación de los algoritmos correspondientes. La
evaluación será cualitativa dicotómica (aprobado – desaprobado)
Instrumentos para la actividad
Para desarrollar esta actividad de formación experimental es necesario contar con lo siguiente:
 Sistema operativo Linux
 Sistema operativo Windows
 Entorno de Desarrollo Integrado Netbeans 1
 Lenguaje de Programación JAVA en su versión J2EE
Cronograma
Esta actividad experimental se desarrollará en los dos módulos con una dedicación de sesiones
semanales de dos horas, totalizando en el año académico 60 hs.
ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013
Msc. Rosa Palavecino Página 5
BIBLIOGRAFÍA
Bibliografía Específica
Título Autor(es) Editorial
Año y Lugar de
edición
Disponible en
Cantidad de
ejemplares
disponibles
Algoritmos, datos y programas
[DeGiusti, 2001]De Giusti,
Armando
Prentice Hall 2001, Argentina
Biblioteca Dpto.
Informática. F.C.E.y T.
1
Fundamentos de Programación: Algoritmos.
Estructuras de datos y Objetos 3º edición
[Joyanes, 2003]Joyanes
Aguilar, Luis
McGraw-
Hill
2003, España
Biblioteca Dpto.
Informática. F.C.E.y T.
1
“Programación en JAVA 2 - Algoritmos,
Estructuras de Datos y Programación
orientada a objetos”
[Joyanes, 2002]Joyanes Aguilar
Luis, Zahonero Martinez
Ignacio
McGraw-
Hill
2002, España
Biblioteca Dpto.
Informática. F.C.E.y T.
1
Estructuras de datos. 3º edición
[Cairo, 2006]Cairo Osvaldo –
Guardati Silvia
McGraw-
Hill
2006, México
Biblioteca Dpto.
Informática. F.C.E.y T.
1
Estructuras de datos en Java
[Joyanes, 2008]Joyanes Aguilar
Luis, Zahonero Martinez
Ignacio
McGraw-
Hill
2008, México
Biblioteca Dpto.
Informática. F.C.E.y T.
1
Bibliografía General o de Consulta
Título Autor(es) Editorial Año y Lugar de
edición
Disponible en Cantidad de
ejemplares
disponibles
Estructura de datos en JAVA" [Weiss, 2006]Weiss Mark Allen Addison-
Wasley
2006, Madrid.
España
Biblioteca Dpto.
Informática. F.C.E.y T
1
Estructuras de Datos y Algoritmos en
JAVA
[Goodrich, 2002]Goodrich-
Tamassia
CECSA 2º
edición–
2002 Biblioteca Dpto.
Informática. F.C.E.y T
1
Estructura de Datos y Organización de
Archivos
[Loomis, 1991]Loomis Mary Prentice
Hall-
Hispanoame
ricana
199 Biblioteca Dpto.
Informática. F.C.E.y T
1
Piensa en JAVA [Exkel, 2002]Bruce Eckel Prentice Hall Madrid 2002 Biblioteca Dpto.
Informática. F.C.E.y T
1
Ingeniería del Software Orientado a
Objetos con UML, JAVA e Internet
[Weitzenfeld, 2005]Weitzenfeld
Alfredo
Thomson Mexico 2005 Biblioteca Dpto.
Informática. F.C.E.y T
1
*sitios de interés en la Web: www.sun.com -- www.javaworld.com -- www.javasoft.com
ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013
Msc. Rosa Palavecino Página 6
Examen Final Regular
En el examen final los alumnos serán evaluados sobre los contenidos teóricos previstos en el
programa de la asignatura. El examen podrá ser oral o escrito y en cualquiera de los casos, será
individual. En el caso de ser escrita la escala de valoración a emplear será cuantitativa politómica
(escala de 1 a 100). El puntaje mínimo para aprobar será de sesenta (60) puntos.
Examen Final Libre
Para el examen Libre el alumno deberá aprobar las instancias que se detallan a continuación, siendo
cada una de ellas eliminatorias:
Etapa 1: Evaluación escrita
a. Desarrollo de un trabajo final en lenguaje JAVA, con evaluación en computador, cuya
temática y planteo deberá ser solicitado a la cátedra con al menos 7 días de anticipación a la
fecha de examen. El trabajo se presentará en la fecha del examen y deberá ser aprobado por
el tribunal.
b. Aprobar una evaluación escrita de tipo práctica.
c. Aprobar una evaluación de tipo practica en computador
Etapa 2: Evaluación oral
Se utiliza la misma modalidad que rige para los alumnos regulares.
Correlativas Anteriores Correlativas Posteriores
Fundamentos de la Programación
Algebra I
Ingles I
Base de Datos I
Teoría de la computación
Métodos Numéricos
Sistemas Operativos
Programación Lógica y Funcional
Msc. Ing. Rosa Palavecino
Prof. Asociado Interino

Más contenido relacionado

PDF
Programación del curso - Estructura de Datos I
DOCX
Estructura de datos
DOC
Algoritmos y estructura de datos 1
ODP
Instituto tecnológico
PDF
Tema1 (2)
PPTX
CLASIFICACIÓN DE LAS METODOLOGÍAS DE DESARROLLO DE SOFTWARE
PDF
Guia examen adsi
DOCX
Silabo tbd 2019_n_v1
Programación del curso - Estructura de Datos I
Estructura de datos
Algoritmos y estructura de datos 1
Instituto tecnológico
Tema1 (2)
CLASIFICACIÓN DE LAS METODOLOGÍAS DE DESARROLLO DE SOFTWARE
Guia examen adsi
Silabo tbd 2019_n_v1

Similar a Edp 2013-contenidos -programacion-2013 (20)

PPTX
Taller de programación clase #1
PDF
Silabo Base de datos parte 2
PDF
trabajo1
PDF
Modulo Grado11
PDF
06 aod admon orgdedatos
PDF
1 base de_datos_distribuidas
DOC
Estructura datos ucc_jairo
PPT
Programación del curso inf212 - POO
PDF
Estructura Datos
PDF
SILABO DE BASE DE DATOS I
DOCX
9 g syllabus_esis_aplicaciones_difusas_2013_01 (1)
PPT
Una Propuesta para la definición de un estándar de facto que permita la inter...
PDF
Diseño instruccional sistemas de información 1
PDF
Clase No.1 - Introcuccion - curso BIG DATA.pdf
PPTX
Estructura de datos I
DOC
Inteligencia artificia 2010 ii
PPT
Rc ricardo prado
PDF
Estructura silvia
PPTX
Presentacion De Programa De Formacion
DOCX
Estructura de Datos - Instrumentación Didáctica
Taller de programación clase #1
Silabo Base de datos parte 2
trabajo1
Modulo Grado11
06 aod admon orgdedatos
1 base de_datos_distribuidas
Estructura datos ucc_jairo
Programación del curso inf212 - POO
Estructura Datos
SILABO DE BASE DE DATOS I
9 g syllabus_esis_aplicaciones_difusas_2013_01 (1)
Una Propuesta para la definición de un estándar de facto que permita la inter...
Diseño instruccional sistemas de información 1
Clase No.1 - Introcuccion - curso BIG DATA.pdf
Estructura de datos I
Inteligencia artificia 2010 ii
Rc ricardo prado
Estructura silvia
Presentacion De Programa De Formacion
Estructura de Datos - Instrumentación Didáctica
Publicidad

Último (20)

PPTX
Razónes, Razones aritméticas, geométricas y financieras.
PPTX
Gestion de Empresas 5 UBB I 2025 (2).pptx
PPTX
Trabajo de Investigación sobre AFP en Chile
PDF
Modelo de negocios CANVAS ing industrial
PDF
ELASTICIDADES PARA MIS WAWAS DENTRO DE LA MICROECONOMIA.pdf
PDF
PLANEACIÓNFINANCIERACONTABILIDADDECOSTOSpdf
PPTX
JORNADA LABORAL Y TIPOS DE HORAS EXTRAS.pptx
PDF
Guía para elaborar un manual de políticas contables.pdf
PPTX
DECRETO SUPREMO QUE MOUE MugufuODIFICA.pptx
PPT
Concepto de Management y Teoría Administrativa P-1.ppt
PDF
expotinaespanolultimaversionparapresentar.pdf
PDF
Presentación Diapositivas Economía y Finanzas Ilustrativo Verde.pdf
PDF
4.2 Designación de Responsable de desechos2025 .pdf
PDF
14062024_Criterios_programacion_multianual_presupuestaria_gasto_materia_perso...
PPTX
Presentación de Gestión financiera nivel 2
PPTX
Clase 5 (1).pptxClase 4_sec_A economia gerencial maestria en gestion tributaria.
PPTX
Presentación Portafolio, Basado en Participante
PPT
La Economía Solidaria y los Fondos de Empleados
PPTX
GERESA LORETO 12.12.2024 - ALMILCAR ASENCIO SAENZ.pptx
PDF
jksdaccountantsEJEMPLODESPACHOCONTABLE.pdf
Razónes, Razones aritméticas, geométricas y financieras.
Gestion de Empresas 5 UBB I 2025 (2).pptx
Trabajo de Investigación sobre AFP en Chile
Modelo de negocios CANVAS ing industrial
ELASTICIDADES PARA MIS WAWAS DENTRO DE LA MICROECONOMIA.pdf
PLANEACIÓNFINANCIERACONTABILIDADDECOSTOSpdf
JORNADA LABORAL Y TIPOS DE HORAS EXTRAS.pptx
Guía para elaborar un manual de políticas contables.pdf
DECRETO SUPREMO QUE MOUE MugufuODIFICA.pptx
Concepto de Management y Teoría Administrativa P-1.ppt
expotinaespanolultimaversionparapresentar.pdf
Presentación Diapositivas Economía y Finanzas Ilustrativo Verde.pdf
4.2 Designación de Responsable de desechos2025 .pdf
14062024_Criterios_programacion_multianual_presupuestaria_gasto_materia_perso...
Presentación de Gestión financiera nivel 2
Clase 5 (1).pptxClase 4_sec_A economia gerencial maestria en gestion tributaria.
Presentación Portafolio, Basado en Participante
La Economía Solidaria y los Fondos de Empleados
GERESA LORETO 12.12.2024 - ALMILCAR ASENCIO SAENZ.pptx
jksdaccountantsEJEMPLODESPACHOCONTABLE.pdf
Publicidad

Edp 2013-contenidos -programacion-2013

  • 1. UNIVERSIDAD NACIONAL DE SANTIAGO DEL ESTERO FACULTAD DE CIENCIAS EXACTAS Y TECNOLOGÍAS LICENCIATURA EN SISTEMAS DE INFORMACIÓN PROGRAMA DE CONTENIDOS (Plan 2011) EQUIPO CÁTEDRA Msc. Ing. Rosa Palavecino – Profesor Asociado – SemiExclusivo Esp. Ing. Analía Méndez – Profesor Adjunto – Exclusivo Msc. Ing. Raquel Zarco – Jefe de Trabajos Prácticos - Exclusivo
  • 2. ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013 Msc. Rosa Palavecino Página 1 SELECCIÓN Y ORGANIZACIÓN DE CONTENIDOS Programa Sintético sobre la base de los contenidos mínimos Unidad 1: Estructuras de datos básicos I Introducción a las estructuras de datos. Estructura de datos encadenadas. Representación de datos en memoria. Estrategias de implementación. Manejo de memoria en ejecución. Operaciones e implementación. Algoritmos fundamentales: recorrido, ordenamiento, búsqueda y actualización. Estrategia de diseño de algoritmos. Resolución de problemas y algoritmos. Unidad 2: Estructura de Datos Avanzadas Estructura de datos avanzadas. Recursividad. Características Tipo de datos recursivos. Árboles. Grafos. Operaciones e implementación. Algoritmos recursivos. Algoritmos fundamentales: recorrido, ordenamiento, búsqueda y actualización. Resolución de problemas y algoritmos. Unidad 3: Algoritmos de Ordenamiento y Búsqueda Ordenamiento y búsqueda: interna y externa. Algoritmos fundamentales. Resolución de problemas y algoritmos. Unidad 4: Archivos Archivos. Organización secuencial. Organización de archivos relativos. Organización de archivos indexados. Algoritmos fundamentales: recorrido, ordenamiento, búsqueda y actualización. Resolución de problemas y algoritmos. Unidad 5: Programación orientado a objetos Paradigma Programación orientada a objetos. Objetos, clases, encapsulamiento, polimorfismo, herencia. Eventos. Manejo de Excepciones. Lenguajes orientados a objetos. Resolución de problemas y algoritmos. Programa Analítico Unidad I: Estructuras de Datos I i) Introducción a las estructuras de datos: Introducción. Conceptos sobre tipos de datos. Sistemas de Tipos. Almacenamiento en memoria. Abstracción en los lenguajes de programación: abstracciones de control. Abstracciones de datos. Tipos abstractos de datos: ventajas, implementación, especificación. Diferencia entre tipo de dato y TAD. ii) Estructura de Datos Encadenadas: Estructura de datos dinámicas. Representación de datos en memoria. Estrategias de implementación. Manejo de memoria en ejecución. Listas encadenadas: concepto. Clasificación. TAD Lista. Algoritmos fundamentales con listas simples encadenadas: creación, inserción, eliminación, actualización, búsqueda, recorrido. Lista Ordenada. Listas doble encadenadas. Listas circulares. Pilas y colas. TAD pila, TAD cola. Operaciones y diferentes formas de implementación. Colas de prioridades. Montículos. Bicolas. Estrategia de diseño de algoritmos. Resolución de problemas y algoritmos. Bibliografía recomendada: [Cairo, 2006]-[Joyanes, 2008]-[Joyanes, 2002] Unidad II: Estructuras de Datos Avanzadas i) Recursividad: Recursividad: definición y características. Requisitos para la recursión. Tipos de datos recursivos. Algoritmos recursivos. Creación, seguimiento, convocatoria. Eficiencia de la recursión. Resolución de problemas y algoritmos
  • 3. ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013 Msc. Rosa Palavecino Página 2 ii) Árboles: Árboles generales. Conceptos básicos. Formas de representación. Árboles binarios: terminología. TAD árbol binario. Árboles binario, lleno y completo. Algoritmos fundamentales de recorrido, actualización, ordenamiento y búsqueda de árboles binarios. Árboles de búsqueda binaria. Operaciones en árboles de búsqueda binaria. Árboles balanceados por su altura (AVL). Inserción, eliminación. Rotación. Árboles balanceados por un límite. Árboles multicaminos: Árboles B, Árboles B+ , operaciones básicas. Resolución de problemas y algoritmos. iii) Grafos: Grafos: conceptos y definiciones. TAD grafo. Métodos de Representación: matriz de adyacencias, listas de adyacencia. Algoritmos fundamentales de: Recorrido de grafos: en amplitud, en profundidad, comparaciones, Ordenación, Actualización y Búsqueda. Matriz de caminos: algoritmo de Warshall. Caminos más cortos con un solo origen: Algoritmo de Dijkstra. Árboles de expansión: Algoritmo de Kruskal. Algoritmo de Prim. Resolución de problemas y algoritmos. Bibliografía recomendada: [Cairo, 2006]-[Joyanes, 2008]-[Joyanes, 2002] Unidad III: Algoritmos de Ordenamiento y Búsqueda i) Ordenamiento interno: concepto. Ordenación rápida (Quicksort). Ordenamiento por apilamiento (Heapsort). Ordenamiento por mezcla (MergeSort). Ordenamiento topológico. Resolución de problemas y algoritmos. ii) Ordenamiento externo: concepto. Mezcla directa. Fusión natural. Mezcla equilibrada múltiple. Método polifásico de ordenación externa. iii) Búsqueda externa: búsqueda en archivos secuenciales. Búsqueda secuencial. Búsqueda secuencial mediante bloques. Búsqueda secuencial con índices. Búsqueda Binaria. Búsqueda por transformación de clave (hash). Soluciones de colisiones. Hashing dinámico: búsqueda dinámica por transformación de claves. Método de las expansiones totales. Método de las expansiones parciales. Listas invertidas. Multilistas. Resolución de problemas y algoritmos. Bibliografía recomendada: [Cairo, 2006]-[Joyanes, 2008] Unidades IV: Archivos i) Archivos: Definiciones. Campos, registros, archivos, bases de datos. Estructura jerárquica. Conceptos: claves, registro físico o bloque. Factor de bloqueo. Organización de archivos: secuencial, directa, secuencial indexada. Modos de acceso. Operaciones sobre archivos: recorrido, actualización, ordenamiento y búsqueda. Resolución de problemas y algoritmos. Bibliografía recomendada: [Joyanes, 2002]-[DeGiusti, 2001]-[Joyanes, 2003] Unidades V: Programación Orientado a objetos i) Paradigma de Programación Orientado a objetos: Lenguajes orientados a objetos: sus características. Conceptos básicos: Programación orientado a Objetos. Objeto. Clases. Encapsulamiento y Abstracción. Herencia: tipos de herencia. Polimorfismo. Modularidad. Niveles. Objetos: propiedades, estructura interna, atributos, métodos, mensajes. Instancia de un objeto. Clase, estructura interna, diferencia entre clase y objeto. Eventos. Tipo de eventos. Entorno visual. Excepciones: Manejo de Excepciones, Lanzamiento de Excepciones, Captura de Excepciones. Estrategia de diseño de algoritmos. Resolución de problemas y algoritmos. .Bibliografía recomendada:[[Joyanes, 2008]- [DeGiusti, 2001]- [Weiss, 2006]
  • 4. ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013 Msc. Rosa Palavecino Página 3 Programa y Cronograma de Trabajos Prácticos El desarrollo de los trabajos prácticos se realizará conforme el plan que se muestra en la siguiente tabla. Practico nro. Temas a desarrollar Fecha Cant.horas 0 Lenguaje de Programación Java - Entorno de Programación (IDE) NetBeans 18 al 24 de marzo 4 1 Programación Orientada a Objetos (POO) – Arreglos - Pilas y Colas estáticas. 25 de marzo al 19/4 16 2 Listas simple encadenadas. Manejo de pilas y colas dinámicas. 22 de abril al 24 de mayo 20 3 Listas simple encadenadas - Listas doble encadenadas- Listas circulares 3 al 14 de junio 8 4 Recursividad 17 al 28 de junio 4 5 Árboles 12/8 al 6/9 16 6 Grafos 9 al 20/9 8 7 Archivos 23/9 al 8/11 36(1) Total de horas prácticas y experimentales (1) Incluye 6 hs de evaluación en computador. 120 hs.
  • 5. ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013 Msc. Rosa Palavecino Página 4 Programa y Cronograma de Actividades de Formación Experimental Taller Lenguaje de Programación Java Contenidos Contenidos programáticos del Taller de Lenguaje Java i) Programación Orientado a Objetos:  Características Principales de Java. La maquina virtual Java. La plataforma Java. El JDK de Sun  El lenguaje Java: Sintaxis, Comentarios, Identificadores, Operadores, Expresiones, Arrays, Strings, Control de flujo. Objetos, Clases. Operador New, Constructores, Destrucción de Objetos, Garbage Collector. Control de Acceso. Herencia y Subclases. Clase Object. Clases Abstractas. Interfaces. Paquetes.  Archivos en Java, entrada y salida, Paquete Java.io, Clase File, Manejo de Byte y Char, Acceso de lectura, Acceso de escritura, Acceso aleatorio.  Clases básicas, Clases de Java.lang, Clases utilitarias  Excepciones, Manejo de Excepciones, Lanzamiento de Excepciones, Captura de Excepciones.  Entorno visual. SWING Application Bibliografía recomendada  [Joyanes, 2008]  [Joyanes, 2002]  [Weiss, 2006]  [Goodrich, 2002] Objetivos  Aplicar el paradigma de programación Orientado a Objetos.  Capacidad para ejecutar correctamente programas en Lenguaje JAVA  Adquirir destrezas fundamentales de programación que permitan la implementación de algoritmos usando el lenguaje de programación Java  Implementar programas en Lenguaje JAVA, usando herramientas de software libre en diferentes plataformas  Emplear reglas de estilo de programación y documentación de programas. Metodología Las clases serán teóricas y practicas, para lo cual se aplicaran métodos de resolución de ejercicios y problemas planteados en los distintos trabajos prácticos de la asignatura, con el fin de afianzar los conceptos teóricos, aclarar dudas y que el alumno alcance un buen desarrollo en su aprendizaje y se desarrollarán en el Laboratorio de Informática. Evaluación La evaluación del Taller de lenguaje de programación Java, se realizará en los tres parciales previstos en la asignatura, donde se solicitará codificación de los algoritmos correspondientes. La evaluación será cualitativa dicotómica (aprobado – desaprobado) Instrumentos para la actividad Para desarrollar esta actividad de formación experimental es necesario contar con lo siguiente:  Sistema operativo Linux  Sistema operativo Windows  Entorno de Desarrollo Integrado Netbeans 1  Lenguaje de Programación JAVA en su versión J2EE Cronograma Esta actividad experimental se desarrollará en los dos módulos con una dedicación de sesiones semanales de dos horas, totalizando en el año académico 60 hs.
  • 6. ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013 Msc. Rosa Palavecino Página 5 BIBLIOGRAFÍA Bibliografía Específica Título Autor(es) Editorial Año y Lugar de edición Disponible en Cantidad de ejemplares disponibles Algoritmos, datos y programas [DeGiusti, 2001]De Giusti, Armando Prentice Hall 2001, Argentina Biblioteca Dpto. Informática. F.C.E.y T. 1 Fundamentos de Programación: Algoritmos. Estructuras de datos y Objetos 3º edición [Joyanes, 2003]Joyanes Aguilar, Luis McGraw- Hill 2003, España Biblioteca Dpto. Informática. F.C.E.y T. 1 “Programación en JAVA 2 - Algoritmos, Estructuras de Datos y Programación orientada a objetos” [Joyanes, 2002]Joyanes Aguilar Luis, Zahonero Martinez Ignacio McGraw- Hill 2002, España Biblioteca Dpto. Informática. F.C.E.y T. 1 Estructuras de datos. 3º edición [Cairo, 2006]Cairo Osvaldo – Guardati Silvia McGraw- Hill 2006, México Biblioteca Dpto. Informática. F.C.E.y T. 1 Estructuras de datos en Java [Joyanes, 2008]Joyanes Aguilar Luis, Zahonero Martinez Ignacio McGraw- Hill 2008, México Biblioteca Dpto. Informática. F.C.E.y T. 1 Bibliografía General o de Consulta Título Autor(es) Editorial Año y Lugar de edición Disponible en Cantidad de ejemplares disponibles Estructura de datos en JAVA" [Weiss, 2006]Weiss Mark Allen Addison- Wasley 2006, Madrid. España Biblioteca Dpto. Informática. F.C.E.y T 1 Estructuras de Datos y Algoritmos en JAVA [Goodrich, 2002]Goodrich- Tamassia CECSA 2º edición– 2002 Biblioteca Dpto. Informática. F.C.E.y T 1 Estructura de Datos y Organización de Archivos [Loomis, 1991]Loomis Mary Prentice Hall- Hispanoame ricana 199 Biblioteca Dpto. Informática. F.C.E.y T 1 Piensa en JAVA [Exkel, 2002]Bruce Eckel Prentice Hall Madrid 2002 Biblioteca Dpto. Informática. F.C.E.y T 1 Ingeniería del Software Orientado a Objetos con UML, JAVA e Internet [Weitzenfeld, 2005]Weitzenfeld Alfredo Thomson Mexico 2005 Biblioteca Dpto. Informática. F.C.E.y T 1 *sitios de interés en la Web: www.sun.com -- www.javaworld.com -- www.javasoft.com
  • 7. ESTRUCTURA DE DATOS Y PROGRAMACIÓN *** ------------***----------------0***PROGRAMA-PLAN 2011 - AÑO 2013 Msc. Rosa Palavecino Página 6 Examen Final Regular En el examen final los alumnos serán evaluados sobre los contenidos teóricos previstos en el programa de la asignatura. El examen podrá ser oral o escrito y en cualquiera de los casos, será individual. En el caso de ser escrita la escala de valoración a emplear será cuantitativa politómica (escala de 1 a 100). El puntaje mínimo para aprobar será de sesenta (60) puntos. Examen Final Libre Para el examen Libre el alumno deberá aprobar las instancias que se detallan a continuación, siendo cada una de ellas eliminatorias: Etapa 1: Evaluación escrita a. Desarrollo de un trabajo final en lenguaje JAVA, con evaluación en computador, cuya temática y planteo deberá ser solicitado a la cátedra con al menos 7 días de anticipación a la fecha de examen. El trabajo se presentará en la fecha del examen y deberá ser aprobado por el tribunal. b. Aprobar una evaluación escrita de tipo práctica. c. Aprobar una evaluación de tipo practica en computador Etapa 2: Evaluación oral Se utiliza la misma modalidad que rige para los alumnos regulares. Correlativas Anteriores Correlativas Posteriores Fundamentos de la Programación Algebra I Ingles I Base de Datos I Teoría de la computación Métodos Numéricos Sistemas Operativos Programación Lógica y Funcional Msc. Ing. Rosa Palavecino Prof. Asociado Interino