Hoja de descripcin de la prctica A. Contextualizacin Las tcnicas generales de diseo de algoritmos ofrecen un amplio y variado conjunto de erramientas !ue se pueden usar de forma fle"ible en la resolucin de mucos tipos de problemas. La aplicacin de una tcnica debe entenderse como un proceso metdico# !ue empie$a con la interpretacin y el modelado del problema desde la perspectiva de esa tcnica# sigue con la definicin de las partes genricas del es!uema algor%tmico &tipos de datos y funciones bsicas'# y acaba en la implementacin# el refinamiento y la optimi$acin del algoritmo. Lgicamente# el paso previo es determinar !u tcnica resulta ms adecuada para el problema de inters. (n algunos casos se podrn aplicar varias tcnicas# a veces una tcnica se podr aplicar de formas distintas# y en otros casos ninguna tcnica estndar ser viable# debindose buscar una solucin ad hoc. B. Enunciado del prolema )ada grupo deber escoger tres problemas# dentro del conjunto de problemas !ue le corresponda# y resolverlos usando algunas de las siguientes tcnicas* +vance rpido. Programacin dinmica. ,ac-trac-ing con es!uema iterativo# como el visto en clase. )omo m%nimo# se debe usar una ve$ cada una de las tcnicas. +dems# todos los problemas deben estar resueltos de forma ptima. (sto significa# por ejemplo# !ue si para un problema se disea un algoritmo vora$ !ue no encuentra la solucin ptima# se deber programar otro algoritmo de bac-trac-ing o programacin dinmica ptimo. Los programas se deben a!ustar rigurosamente a los "ormatos de entrada y salida especificados en los enunciados. .o incluir ning/n interface adicional para los programas. (n todos los casos# se usar para la entrada0salida del programa la entrada y salida estndar &leer de teclado# escribir en pantalla'. 1e deber comprobar la correccin de los programas# mostrando la ejecucin sobre diversos ejemplos. La ejecucin de estos ejemplos se ar redireccionando la entrada y salida estndar a ficeros* >> ./programa <prueba1.txt >salida1.txt +plicar el proceso de diseo de las tcnicas visto en clase &interpretacin y modelado del problema# es!uema general# funciones bsicas del es!uema# etc.'# documentando las decisiones tomadas en cada punto. Hacer un estudio de los tiempos de ejecucin de los algoritmos diseados. (l estudio debe ser breve pero significativo &es decir# usar tamaos suficientemente grandes'. ("traer conclusiones relevantes sobre la eficiencia y sobre el propio proceso de aplicacin de las tcnicas. B.#. $%mero de los prolemas a resol&er 1e deber considerar la suma de los n/meros de 2.3 de los miembros del grupo. 1ea ' la suma de los 2.3 de los miembros. (l grupo de problemas a resolver est en funcin del valor de E obtenido con la frmula* E ( ' mod 5. E ( ' mod 5 $%mero de prolemas 4 54647# 54849# :48# 543;7 5 54535# 97<# 54564# 543;7 7 39:# 54437# 546:7# :48 3 547:4# 5478<# 54544# 54495 8 854# 54877# 54849# 54466 5 Algoritmos y Estructuras de Datos Curso 04/05 Prctica 3. Resolucin de Problemas. Hoja de descripcin de la prctica Los alumnos debern elegir y resolver 3 problemas dentro del grupo !ue les corresponda. Los enunciados de los problemas se encuentran disponibles en la pgina =eb de la asignatura &ttp*00dis.um.es0profesores0ginesgm0aed.tml'. B.). *alidacin autom+tica de los programas Para validar la correccin de los programas se puede utili$ar el jue$ on>line de la ?niversidad de @alladolid &ttp*00acm.uva.es'. Los n/meros de los problemas coinciden con los cdigos de problemas en este jue$. 1e valorar muy positi&amente !ue los programas diseados sean aceptados por el jue$ on>line# aun!ue no ser un re!uisito indispensable para aprobar. .o obstante# ay !ue recordar !ue en esta prctica no basta con escribir los programas* ay !ue documentar el proceso de anlisis y diseo# y reali$ar el estudio de la eficiencia. C. ,emoria de la pr+ctica La memoria de la prctica deber contener obligatoriamente los siguientes apartados. C.#. 'ortada .ombre de los alumnos# n/mero de prcticas y e>mail de cada uno. (n la cuenta de prcticas se debe incluir la memoria de prcticas &en formato 2A)# P1 o P2B'. C.). -esolucin de prolemas Para cada problema resuelto por el grupo se debern incluir los siguientes apartados. C.).#. An+lisis y dise.o 2escribir el proceso de aplicacin de la tcnica# el es!uema algor%tmico utili$ado# as% como otras cuestiones y decisiones de diseo !ue se consideren de inters. C.).). /istado del cdigo )digo fuente del programa o programas implementados# en )0)CC. C.).0. E!emplos de uso y e"iciencia 1e debern mostrar brevemente algunos ejemplos de aplicacin. +simismo# se deber acer un pe!ueo estudio terico0prctico de la eficiencia conseguida. C.0. Conclusiones ("traer conclusiones relevantes comparando las diferentes tcnicas# en cuanto a su proceso de aplicacin y a la eficiencia y resultados conseguidos. C.4. 1n"orme de desarrollo 3gual !ue en las prcticas 5 y 7. Recordar las conclusiones y valoraciones personales. D. E&aluacin de la pr+ctica D.#. 2ligatorio Para aprobar esta prctica se re!uiere !ue* - Los programas !ue sean desarrollados se puedan compilar sin errores y funcionen correctamente en las m!uinas del laboratorio de prcticas. - Los problemas asignados al grupo de prcticas deben estar resueltos correctamente o de forma ptima &en el caso de los problemas de optimi$acin'. - La memoria de la prctica debe contener todos los puntos indicados en el apartado ). La memoria debe ser entregada en el pla$o !ue se estable$ca. - Dodos los programas deben ser originales &obviamente'. La manipulacin o copia supondr no superar la prctica. 7 Algoritmos y Estructuras de Datos Curso 04/05 Prctica 3. Resolucin de Problemas. Hoja de descripcin de la prctica D.). Criterios de &aloracin La prctica se puntuar de acuerdo a los siguientes criterios* - +plicacin de las tcnicas y las ideas vistas en clase. - )orrecto diseo de los algoritmos y uso del lenguaje. - )omprobacin de la correccin de los algoritmos# valorndose muy positivamente la aceptacin por el jue$ on>line. - (ficiencia de los algoritmos diseados. - 1ignificatividad de la comparativa de eficiencia y las conclusiones e"tra%das. D.0. 2tras cuestiones La prctica se deber reali$ar en grupos de dos alumnos. Dodos los ficeros generados &incluidos los programas y los casos de prueba' y la memoria de prcticas deben estar accesibles en un subdirectorio practica3 dentro de la cuenta del grupo de prcticas. 1e establece como feca tope de entrega de esta prctica el lunes 74 de junio de 7449. 3