Download - Taller II Arboles 2-2013 2

Transcript
  • UNIVERSIDAD DE CARABOBO Facultad Experimental de Ciencias y Tecnologa Departamento de Computacin U.A. de Algoritmos y Programacin CAO403: Programacin II

    Taller #2

    Perodo Lectivo 2-2013 (Valor: 30%)

    1.INSTRUCCIONES

    Este taller de programacin es una evaluacin estrictamente individual; por lo tanto, durante la realizacin del mismo, no est permitido prestar o recibir ayuda de otro(s) estudiante(s).

    ESTA permitido el uso de cdigos fuentes en digital hechos por usted para el desarrollo del taller. Pueden traer material bibliogrfico (libros, guas, manuales, cdigo impreso, etc.) para el desarrollo del

    taller de programacin. El estudiante que infrinja alguna de las instrucciones anteriores ser retirado del taller y se le considerar

    aplazado con la nota mnima (Artculo 34 de las Normas de Evaluacin de los Aprendizajes). El taller tiene una duracin estimada de tres (03) horas acadmicas.

    El ejercicio propuesto requiere la lectura de datos de la entrada estndar (standard input) y la escritura de resultados en la salida estndar (standard output).

    Para el desarrollo del taller debe utilizar el lenguaje de programacin C++, junto con sus libreras estndar. Para la compilacin de sus cdigos fuentes, debe realizarla por medio de un archivo makefile, el cual deber entregar junto con sus cdigos fuentes.

    2.ACTIVIDADES A REALIZAR

    Dado un rbol, la distancia entre dos nodos es la longitud del nico caminos que los conecta, y el dimetro del rbol es la distancia mxima sobre todos los pares de nodos. El dimetro del rbol nulo es menos uno (-1) y el dimetro de un rbol que sea una hoja es cero (0). Desarrollar un algoritmo recursivo de coste lineal (con respecto al nmero de nodos del rbol) para hallar el dimetro de un rbol binario dado. El dimetro del rbol de la figura a es 6, y el dimetro del rbol de la figura b es 5

    (a) (b)

    2.1.FORMATO DE ENTRADA

    Cada caso de prueba consiste de tres lneas, la primera lnea contiene un numero m entero que representa la cantidad de elementos del rbol que se va a construir, luego dos lneas que contendrn los recorridos en (preorden, inorden) o (postorden, inorden), para la construccin de los rboles binarios. Cada lnea comenzar con una palabra que indica el tipo de recorrido (PREORDEN, INORDEN, POSTORDEN) seguida por m enteros que

  • describen el recorrido correspondiente.

    Ejemplo.

    11 PREORDEN 10 5 2 1 4 3 7 6 8 9 11 INORDEN 1 2 3 4 5 6 7 8 9 10 11 7 INORDEN 1 2 3 4 5 6 7 POSTORDEN 2 1 5 4 7 6 3

    2.2.FORMATO DE SALIDA

    Por cada caso de prueba debe imprimir el dimetro del rbol correspondiente, segn el formato indicado en el ejemplo. Se deben respetar fielmente el formato del archivo de salida.

    Ejemplo.

    El diametro del arbol #1 es 6. El diametro del arbol #2 es 5. 3.OBSERVACIONES

    No debe mostrar por pantalla ningn tipo de mensaje al usuario para su interaccin con el programa, ninguna interfaz grfica desarrollada por usted, ser corregida positivamente o le aportara ningn punto extra para su calificacin final.

    El formato de salida debe ser respetado como se indica en el enunciado, de lo contrario acarrear con puntos menos en su nota final.

    Debe proveer un archivo makefile que permita compilar su taller, la falta del mismo conllevar a la no revisin de su taller.