Saltar ao contido principal
Inicio  »  Centros  »  Escola Técnica Superior de Enxeñaría  »  Información da Materia

G4011222 - Algoritmos e Estruturas de Datos (Programación) - Curso 2013/2014

Información

  • Créditos ECTS
  • Créditos ECTS: 6.00
  • Total: 6.0
  • Horas ECTS
  • Clase Expositiva: 20.00
  • Clase Interactiva Laboratorio: 30.00
  • Horas de Titorías: 1.00
  • Total: 51.0

Outros Datos

  • Tipo: Materia Ordinaria Grao RD 1393/2007
  • Departamentos: Electrónica e Computación
  • Áreas: Ciencia da Computación e Intelixencia Artificial
  • Centro: Escola Técnica Superior de Enxeñaría
  • Convocatoria: 1º Semestre de Titulacións de Grao/Máster
  • Docencia e Matrícula: null

Profesores

NomeCoordinador
Cariñena Amigo, María Purificación.SI
CARREIRA NOUCHE, MARIA JOSE.NON
Felix Lamas, Paulo.NON

Horarios

NomeTipo GrupoTipo DocenciaHorario ClaseHorario exames
Grupo CLE01OrdinarioClase ExpositivaSISI
Grupo CLIL_01OrdinarioClase Interactiva LaboratorioSISI
Grupo CLIL_02OrdinarioClase Interactiva LaboratorioSISI
Grupo CLIL_03OrdinarioClase Interactiva LaboratorioSISI
Grupo TI-ECTS01OrdinarioHoras de TitoríasNONNON
Grupo TI-ECTS02OrdinarioHoras de TitoríasNONNON
Grupo TI-ECTS03OrdinarioHoras de TitoríasNONNON
Grupo TI-ECTS04OrdinarioHoras de TitoríasNONNON
Grupo TI-ECTS05OrdinarioHoras de TitoríasNONNON

Programa

Existen programas da materia para os seguintes idiomas:

  • Castelán
  • Galego
  • Inglés


  • Obxectivos da materia
    O obxectivo de formación desta materia é desenvolver as destrezas necesarias para que o estudante saiba analizar a complexidade computacional dun determinado algoritmo, así como desenvolver as capacidades necesarias para escoller a combinación de estruturas de datos e estratexia de resolución máis apropiada para resolver de modo eficiente (en termos de recursos espaciais e temporais) un determinado problema. Ademais, esta materia completa a formación do estudante en estruturas de datos ao presentar as estruturas de datos non lineais e a súa utilización para representar e resolver problemas de entidade.

    Contidos
    Tema 1. Resolución de problemas: algoritmos+estruturas de datos

    Tema 2. Estruturas de datos non lineais: Árbores
    * Conceptos básicos e propiedades
    * Árbores de busca
    * Árbores de busca equilibrados
    * Aplicacións

    Tema 3. Estruturas de datos non lineais: Grafos
    * Conceptos básicos e propiedades
    * Algoritmos fundamentais con grafos
    * Aplicacións

    Tema 4. Táboas hash

    Tema 5. Estratexias algorítmicas
    * Divide e vencerás
    * Algoritmos voraces
    * Programación dinámica
    * Volta atrás
    * Ramificación e poda

    Bibliografía básica e complementaria
    Bibliografía Básica:

    G.L. Heileman. Estructuras de Datos, Algoritmos y Programación Orientada a Objetos. McGraw-Hill, 1998.
    L. Joyanes, I. Zahonero. Algoritmos y Estructuras de Datos: Una perspectiva en C. McGraw-Hill, 2004.

    L. Joyanes, I. Zahonero, M. Fernández, L. Sánchez. Estructura de Datos. Libro de Problemas. McGraw-Hill, 1999.

    Bibliografía Complementaria:

    B. Bowman. Algorittmos y Estructuras de Datos. Aproximación en C. Oxford, 1999.

    O. Cairó, S. Guardati. Estructuras de Datos. McGraw-Hill, 2006.

    N. Martí Oliet, Y. Ortega Mallén, J.A. Verdejo López: Estructuras de Datos y Métodos Algorítmicos. Ejercicios resueltos. Pearson Prentice-Hall, 2004.
    Competencias
    A materia contribúe a alcanzar as seguintes competencias, recollidas na memoria do título de Grao en Enxeñaría Informática da USC para o Módulo de Programación:

    - Desenvolver programas cun bo estilo de programación, coa documentación necesaria e os comentarios adecuados.
    - Saber calcular a complexidade computacional dun algoritmo e avaliar a implementación máis adecuada dun algoritmo determinado de acordo cos recursos dispoñibles (memoria e tempo de execución).
    - Utilizar ferramentas de edición, compilación, e execución para desenvolver programas. Capacidade para aplicar estratexias de depuración, proba e corrección de programas.
    - Escoller a estrutura de datos máis correcta e eficiente para resolver un problema.
    - Manexar diferentes niveis de abstracción para estruturar o software a desenvolver.
    - Deseñar algoritmos dunha certa complexidade e implementarlos aplicando os principios da programación estruturada e modular.
    - Comprensión de conceptos relacionados co desenvolvemento de algoritmos.
    - Manexo de xestores de erros, xestión de excepcións e tolerancia a fallos.
    - Uso de repositorios de software.
    - Motivación e capacidade de autoaprendizaxe.
    - Autoestima e espírito de superación.

    Ademais, contribúese ao desenvolvemento das competencias xerais e específicas recollidas nas correspondentes táboas na mencionada memoria do título:

    * Competencias xerais:
    CG1: Capacidade para desenvolver proxectos no ámbito da enxeñaría en informática que teñan por obxecto, de acordo cos coñecementos adquiridos, a concepción, o desenvolvemento ou a explotación de sistemas, servizos e aplicacións informáticas.
    CG3: Capacidade para deseñar, desenvolver, avaliar e asegurar a usabilidade dos sistemas, servizos e aplicacións informáticas, así como da información que xestionan.
    CG8: Coñecemento das materias básicas e tecnoloxías, que capaciten para a aprendizaxe e desenvolvemento de novos métodos e tecnoloxías, así como as que lles doten dunha gran versatilidade para adaptarse a novas situacións.
    CG9: Capacidade para resolver problemas con iniciativa, toma de decisións, autonomía e creatividade. Capacidade para saber comunicar e transmitir os coñecementos, habilidades e destrezas da profesión de Enxeñeiro Técnico en Informática.

    * Competencias transversais:
    TR1 (Instrumentais): Capacidade de análise e síntese. Capacidade de organización e planificación. Comunicación oral e escrita. Capacidade de xestión da información. Resolución de problemas. Toma de decisións.
    TR2 (Persoais): Traballo en equipo. Habilidades nas relacións interpersoais. Razoamento crítico.
    TR3 (Sistémicas): Aprendizaxe autónoma. Adaptación a novas situacións. Creatividade. Iniciativa. Motivación pola calidade.

    * Formación Básica
    FB3: Capacidade para comprender e dominar os conceptos básicos de algorítmica e complexidade computacional, e a súa aplicación para a resolución de problemas propios da enxeñaría.
    FB4: Coñecementos básicos do uso e programación dos computadores.
    FB5: Coñecemento dos fundamentos da programación dos sistemas informáticos, e a súa aplicación para a resolución de problemas propios da enxeñaría.

    * Comúns á rama da Informática
    RI6: Coñecemento e aplicación dos procedementos algorítmicos básicos das tecnoloxías informáticas para deseñar solucións a problemas, analizando a idoneidade e complexidade dos algoritmos propostos.
    RI7: Coñecemento, deseño e utilización de forma eficiente dos tipos e estruturas de datos máis adecuados á resolución dun problema.

    Metodoloxía da ensinanza
    A metodoloxía seguida usa como plataforma básica o Campus Virtual da USC. Na aula virtual da materia o alumno disporá de toda a información (material de teoría, transparencias de clase, guións de prácticas, bibliotecas de TADs, etc.).
    Impartiranse 20 horas de clases maxistrais en sesións de 1 hora, e haberá unha sesión semanal de dúas horas e media de traballo práctico (resolución de problemas, programación).
    O alumno poderá en todo momento seguir a súa progresión, ao ter dispoñibles continuamente as notas dos exercicios e proxectos que teñan que entregar para seguir o modelo de avaliación continua.

    Sistema de evaluación
    A avaliación consta de dúas partes individuais separadas, teoría e práctica, sendo necesario superar ambas as partes independentemente.

    A parte práctica da materia avaliarase mediante un proceso de AVALIACIÓN CONTINUA:
    -50% da nota global: entrega de proxectos prácticos durante o cuadrimestre, con prazos e normas de entrega/corrección prefixadas polos profesores.

    A parte teórica (50% da nota global) avaliarase en dúas partes:
    -15% da nota: Entrega de exercicios ao longo do cuadrimestre.
    -35% da nota: Exame global ao final do cuadrimestre

    A entrega dalgún traballo (proxecto ou exercicio) con posterioridade ao 1 de novembro levará asociada a consideración de PRESENTADO na cualificación da materia, independentemente da asistencia ou non ao exame final.

    RECUPERACIÓN (XULLO):
    Poderán realizar este exame aqueles alumnos que non superasen algunha das partes na avaliación continua, ou os que opten directamente por esta opción.
    - Teoría (50% da nota final): exercicio escrito.
    - Práctica (50% da nota final): elaboración dun proxecto.

    En aplicación da normativa de autoría de traballos prácticos aprobada pola Xunta da ETSE (01/03/2012), a copia total ou parcial de algún exercicio de prácticas ou teoría suporá o suspenso nas dúas oportunidades do curso, coa cualificación de 0,0 en ambos casos.

    Para os alumnos repetidores: Mantéñense unicamente os resultados da avaliación teórica ou práctica que se teña superado (nota superior a 5) no curso inmediatamente anterior. Noutro caso, terá que repetirse a materia completa

    Una vez que a materia perde o dereito a docencia a avaliación realizarase mediante un exame escrito (50% da nota final) e a entrega dun proxecto (50% da nota final), do mesmo xeito que na oportunidade de recuperación.

    Tempo de estudo e traballo persoal
    TRABALLO PRESENCIAL NA AULA:
    Clases maxistrais: 20 horas
    Aprendizaxe baseada en problemas e/ou casos en grupos reducidos: 15 horas
    Sesións prácticas en grupos reducidos: 15 horas
    Titorías en grupos moi reducidos: 1 hora
    Actividades de avaliación: 5 horas
    Total horas traballo presencial na aula: 56 horas

    TRABALLO PERSOAL DO ALUMNO:
    Esta materia ten 6 créditos ECTS, correspondendo unha carga de traballo persoal para os alumnos de 90 horas. Este tempo pode desagregarse nos seguintes apartados:
    * Estudo autónomo: 30 horas
    * Escritura de exercicios, traballos, etc.: 15 horas
    * Programación/experimentación en computador: 30 horas
    * Avaliación de traballos, proxectos, exames: 15 horas


    Recomendacións para o estudo da materia
    Supóñense uns coñecementos suficientes de linguaxe de programación C e dos fundamentos de grafos, que ven, respectivamente, nas materias de Programación I e II, e en Matemática Discreta de primeiro curso.
    Recoméndase seguir o modelo de avaliación continua, o que significa levar a materia ao día. Desta forma seguiranse con maior facilidade as clases teóricas e as clases prácticas, o que fai a materia máis levadía.
    Tamén se recomenda encarecidamente o uso das horas de titorías para aclarar calquera dúbida que se poida presentar no desenvolvemento da materia.