UA
   PROGRAMACIÓN Y ESTRUCTURAS DE DATOS    Año académico       Versión PDF.  Versión PDF para convalidación.
Código9382Descripción
Crdts. Teor.4,5ESTRUCTURA DE DATOS Y ALGORITMO DE MANIPULACIÓN. TIPOS ABSTRACTOS DE DATOS. DISEÑO RECURSIVO.
Crdts. Pract.4,5
A efectos de intercambios en programas de movilidad, la carga de esta asignatura equivale a 11,25 ECTS.


Departamentos y Áreas
DepartamentosÁreaCrdts. Teor.Crdts. Pract.Dpto. Respon.Respon. Acta
LENGUAJES Y SISTEMAS INFORMÁTICOSLENGUAJES Y SISTEMAS INFORMATICOS4,54,5


Estudios en los que se imparte
Ingeniería Técnica en Informática de Sistemas - plan 2001


Pre-requisitos
FUNDAMENTOS DE PROGRAMACIÓN I
FUNDAMENTOS DE PROGRAMACIÓN II


Incompatibilidades de matrícula por contenidos equivalentes
Sin Datos


Matriculados (2008-09)
Grupo (*)Número
1 59
2 42
TOTAL 101
(*) 1:GRUPO 1 - CAS
(*) 2:GRUPO 2 - CAS


Ofertada como libre elección (2008-09)
Sin departamento
Consulta Gráfica de Horario
A efectos de intercambios en programas de movilidad, la carga de esta asignatura equivale aPincha aquí


Horario (2008-09)
ModoGrupo (*)Día inicioDía finDíaHora inicioHora finAula
CLASE TEÓRICA 1 15/09/2008 23/12/2008 L 08:30 10:00 A2/0B13
  1 26/01/2009 22/05/2009 L 08:30 10:00 A2/0B13
  2 15/09/2008 23/12/2008 L 17:00 18:30 A2/0E03
  2 26/01/2009 22/05/2009 L 17:00 18:30 A2/0E03
PRÁCTICAS CON ORDENADOR 1 15/09/2008 23/12/2008 L 15:30 17:00 0016P1002
  1 26/01/2009 22/05/2009 L 15:30 17:00 0016P1002
  2 15/09/2008 23/12/2008 L 20:00 21:30 0016P1002
  2 26/01/2009 22/05/2009 L 20:00 21:30 0016P1002
  3 15/09/2008 23/12/2008 M 11:00 12:30 0016P1002
  3 26/01/2009 18/03/2009 M 11:00 12:30 0016P1002
  3 19/03/2009 22/05/2009 M 11:00 12:30 0016P1002
  4 15/09/2008 23/12/2008 M 12:30 14:00 0016P1002
  4 26/01/2009 22/05/2009 M 12:30 14:00 0016P1002
  5 15/09/2008 23/12/2008 M 14:00 15:30 0016P1002
  5 26/01/2009 22/05/2009 M 14:00 15:30 0016P1002
(*) CLASE TEÓRICA
1: GRUPO 1 - CAS
2: GRUPO 2 - CAS
(*) PRÁCTICAS CON ORDENADOR
1: Grupo de Prácticas de PED 9382 - CAS
2: Grupo de Prácticas de PED 9382 - CAS
3: Grupo de Prácticas de PED 9382 - CAS
4: Grupo de Prácticas de PED 9382 - CAS
5: Grupo de Prácticas de PED 9382 - CAS


Grupos de matricula (2008-09)
Grupo (*)CuatrimestreTurnoIdiomaDistribución (letra nif)
1 Anual M CAS desde A hasta M
2 Anual T CAS desde N hasta Z
(*) 1:GRUPO 1 - CAS
(*) 2:GRUPO 2 - CAS


Objetivos de las asignatura / competencias (2008-09)
El objetivo principal en esta asignatura es que el alumno:

- Conozca los mecanismos de abstracción y su importancia para la resolución de problemas.

- Comprenda la necesidad de separación entre los niveles de especificación, implementación y uso.

- Conozca los tipos de datos más usuales en programación, sus realizaciones más comunes y su utilidad. Concretamente, se espera que el alumno:

- Sea capaz de organizar un determinado volumen de datos de la forma más racional posible en función de los requerimientos del problema a resolver.

- Sea capaz de escoger entre distintas implementaciones alternativas de una abstracción de datos, y razonar sobre la solución escogida en cuanto a coste se refiere.


Contenidos teóricos y prácticos (2008-09)
Contenidos teóricos

El programa de teoría propuesto se compone de cinco núcleos:

1. Introducción a los Tipos Abstractos de Datos:
- Noción de complejidad.
- Cotas de complejidad.
- Notación asintótica.
- Obtención de cotas de complejidad.

2. Los tipos lineales:
- Introducción a los tipos abstractos de datos.
- Vectores.
- Listas.
- Pilas.
- Colas.

3. El tipo árbol:
- Definiciones generales.
- Árboles binarios.
- Árboles de búsqueda: Árboles binarios de búsqueda, árboles AVL, árboles 2-3, árboles 2-3-4, árboles rojos-negros, árboles B.

4. El tipo conjunto:
- Definiciones generales.
- Diccionario: tabla de dispersión, trie, árboles de búsqueda digitales.
- Cola de prioridad: montículo, cola de prioridad doble, árbol izquierdista o leftist.

5. El tipo grafo:
- Concepto de grafo y terminología,.
- Especificación algebraica.
- Representación de grafos.
- Grafos dirigidos: recorridos en profundidad o DFS, recorridos en anchura o BFS, grafos acíclicos dirigidos o GAD, componentes fuertemente conexos.
- Grafos no dirigidos.

En la primera unidad se estudian conceptos básicos del estudio de los Tipos Abstractos de Datos, que luego serán usados sistemáticamente en el resto del curso. No se pretende desarrollar esta teoría en profundidad, sino tan sólo en el nivel que se considera preciso para soportar adecuadamente el resto de los contenidos del curso. En segundo lugar, una vez introducidos los conceptos anteriores, éstos se concretan en la especificación de los tipos que se van a estudiar más adelante y que no precisan definiciones para su comprensión. En tercer lugar, se introduce al alumno en la necesidad del análisis de la eficiencia tanto de la representación escogida para los distintos tipos, como la de los algoritmos de manejo de la misma. Por último, se planteará la necesidad de una herramienta para la implementación, concretamente nos referimos al lenguaje C++. El resto de capítulos sirven para presentar diversas familias de tipos de datos consideradas clásicas. Básicamente, estos cuatro núcleos presentan la misma estructura:

- Definiciones y conceptos

- Especificación

- Estudio de las distintas representaciones

- Implementación de las representaciones y análisis de las mismas

- Utilidad del tipo. Puede ser un estudio de algoritmos que resuelvan problemas típicos del tipo, o bien ejemplos de distintas utilizaciones del tipo.

Contenidos prácticos

Se realizarán un conjunto de prácticas en las que se estudiará:

- Diseño de/con tipos abstractos de datos.

- Prueba de la eficiencia de algoritmos y distintas representaciones.


Más información
http://www.dlsi.ua.es/cgi-bin/wwwadm/assig2.cgi?id=cas&assig=PED&plan=2001
Profesor/a responsable
PERAL CORTES , JESUS


Metodología docente (2008-09)
Clases teóricas y prácticas
Lección magistral con propuesta de ejercicios y problemas para resolver en clase y fuera del aula.


Tipo de actividades: teóricas y prácticas
Laboratorios
Desarrollo de prácticas de programación de estructuras de datos con el lenguaje C++ por parejas.


Profesores (2008-09)
Grupo Profesor/a
TEORIA DE 93821FERRANDEZ RODRIGUEZ, ANTONIO
LUJAN MORA, SERGIO
MOYA ALIA, SANTIAGO
PERAL CORTES, JESUS
REQUENA JIMENEZ, ANTONIO
VAZQUEZ PEREZ, SONIA
2FERRANDEZ RODRIGUEZ, ANTONIO
LUJAN MORA, SERGIO
MOYA ALIA, SANTIAGO
PERAL CORTES, JESUS
REQUENA JIMENEZ, ANTONIO
VAZQUEZ PEREZ, SONIA
PRÁCTICAS CON ORDENADOR DE 93821MOYA ALIA, SANTIAGO
2MOYA ALIA, SANTIAGO
3FERRANDEZ RODRIGUEZ, ANTONIO
LUJAN MORA, SERGIO
PERAL CORTES, JESUS
4FERRANDEZ RODRIGUEZ, ANTONIO
5FERRANDEZ RODRIGUEZ, ANTONIO
Enlaces relacionados
http://es.wikipedia.org/wiki/Número_complejo
http://math.hws.edu/TMCM/java/xSortLab/
http://mat21.etsii.upm.es/ayudainf/aprendainf/Cpp/manualcpp.pdf
http://nova.umuc.edu/~jarc/idsv/lesson1.html
http://pracdlsi.dlsi.ua.es
http://webpages.ull.es/users/jriera/Docencia/AVL/AVL%20tree%20applet.htm
http://www.conclase.net/c/curso/index.php
http://www.conclase.net/c/librerias/funcion.php?fun=atan2
http://www.cse.ohio-state.edu/~bondhugu/acads/234-tree/index.shtml
http://www.cs.jhu.edu/~goodrich/dsa/trees/btree.html
http://www.cs.unm.edu/~rlpm/499/ttft.html
http://www.etsimo.uniovi.es/eckel/


Bibliografía

C++ paso a paso (*1)
Autor(es):Luján Mora, Sergio
Edición:San Vicente del Raspeig : Publicaciones de la Universidad de Alicante, 2006.
ISBN:84-7908-888-5
Recomendado por:LUJAN MORA, SERGIO (*2)
[ Acceso al catálogo de la biblioteca universitaria ]

Cómo programar en C++ (*1)
Autor(es):DEITEL, Harvey M. ; DEITEL, Paul J.
Edición:España : Pearson Educación, 2003.
ISBN:970-26-0254-8
Recomendado por:PERAL CORTES, JESUS (*2)
[ Acceso al catálogo de la biblioteca universitaria ]

Data abstraction and problem solving with C++ : walls and mirrors (*1)
Autor(es):CARRANO, Frank M. ; PRICHARD, Janet J.
Edición:Boston : Addison-Wesley, 2002.
ISBN:0-201-74119-9
Recomendado por:LUJAN MORA, SERGIO
MOYA ALIA, SANTIAGO
PERAL CORTES, JESUS
REQUENA JIMENEZ, ANTONIO
VAZQUEZ PEREZ, SONIA
[ Acceso al catálogo de la biblioteca universitaria ]

Data structures and algorithms in C++ (*1)
Autor(es):DROZDEK, Adam
Edición:Pacific Grove : Brooks/Cole, 2001.
ISBN:0-534-37597-9
Recomendado por:PERAL CORTES, JESUS (*2)
[ Acceso al catálogo de la biblioteca universitaria ]

Diseño de programas : formalismo y abstracción (*1)
Autor(es):PEÑA MARÍ, Ricardo
Edición:Madrid : Pearson-Prentice Hall, 2005.
ISBN:978-84-205-4191-4
Recomendado por:PERAL CORTES, JESUS (*2)
[ Acceso al catálogo de la biblioteca universitaria ]

Ejercicios de programación creativos y recreativos en C++ (*1)
Autor(es):GREGORIO RODRÍGUEZ, Carlos [et al.]
Edición:Madrid : Pearson Educación, 2002.
ISBN:84-205-3211-8
Recomendado por:LUJAN MORA, SERGIO
MOYA ALIA, SANTIAGO
PERAL CORTES, JESUS
REQUENA JIMENEZ, ANTONIO
VAZQUEZ PEREZ, SONIA
[ Acceso al catálogo de la biblioteca universitaria ]

El lenguaje de programación C++ (*1)
Autor(es):STROUSTRUP, Bjarne
Edición:Madrid : Addison Wesley, 2002.
ISBN:84-7829-046-X
Recomendado por:LUJAN MORA, SERGIO
MOYA ALIA, SANTIAGO
PERAL CORTES, JESUS
REQUENA JIMENEZ, ANTONIO
VAZQUEZ PEREZ, SONIA
[ Acceso al catálogo de la biblioteca universitaria ]

Fundamentals of data structures in C++ (*1)
Autor(es):HOROWITZ, Ellis; SAHNI, Sartaj; MEHTA, Dinesh
Edición:New York : Computer Science Press, 1997.
ISBN:0-7167-8292-8
Recomendado por:PERAL CORTES, JESUS (*2)
[ Acceso al catálogo de la biblioteca universitaria ]

Resolución de problemas con C++ : [el objetivo de la programación] (*1)
Autor(es):SAVITCH, Walter
Edición:México : Pearson Educación, 2000.
ISBN:968-444-416-8
Recomendado por:PERAL CORTES, JESUS (*2)
[ Acceso al catálogo de la biblioteca universitaria ]
(*1) Este libro HA SIDO REVISADO por la biblioteca correspondiente. (*2) Este profesor ha recomendado el recurso bibliográfico a todos los alumnos de la asignatura.
Fechas de exámenes oficiales (2008-09)
ConvocatoriaGrupo (*)fechaHora inicioHora finAula(s) asignada(s)Observ:
Período extraordinario de diciembre 31/10/2008 15:00 18:00 EP/0-29M -
Asignaturas segundo cuatrimestre y anuales 12/06/2009 09:00 12:00 A2/0E12
A2/0E11
A2/0D03
A2/0D04
A2/0D14
-
2ª convocatoria asignaturas segundo cuatrimestre y anuales 09/07/2009 08:30 11:30 A2/0E01
A2/0D03
A2/0D04
-
2ª convocatoria parciales 23/01/2009 09:00 12:00 A2/0C12
A2/0C13
A2/0E12
A2/0E13
A2/0E14
A2/0A11
-
(*) 1:GRUPO 1 - CAS
(*) 2:GRUPO 2 - CAS


Instrumentos y criterios de evaluación (2008-09)
Evaluación continua, examen final
Examen parcial teórico en febrero. Examen final de teoría y de prácticas en junio.

Para aprobar la asignatura es necesario aprobar la parte de teoría y de prácticas por separado.