[2011 - Feb] Ejercicio 3B

[2011 - Feb] Ejercicio 3B

de Alejandro Brusco Ibañez -
Número de respuestas: 1
2 dudas:
1)

Por qué se define el TYPE así:
"TYPE 
(* definición de la celda básica de la cola *) 
Celda = POINTER TO NCelda; 
NCelda = RECORD 
info : CHAR;   (* información *) 
sig : Celda;   (* puntero al siguiente *) 
ant : Celda   (* puntero al anterior *) 
END; "

En la letra dice que se debe trabajar con elementos del tipo "T" no "CHAR". Está bien esa solución? Es correcto usar siempre "CHAR" en el lugar de "T"?

2)

En la implementación de "EnqueueFront" se utiliza una celda dummy. Qué finalidad tiene? Es indispensable o se podría haber resuelto sin utilizarla?

Muchas gracias
En respuesta a Alejandro Brusco Ibañez

Re: [2011 - Feb] Ejercicio 3B

de Andres Sebastian Bentos Gomez -
Hola.
Con respecto a la primera creo que es ilustrativo. Tengo entendido que el tipo T se usa como genérico, es decir vas a poder cambiar el tipo T en el procedimiento por otro, en este caso CHAR y la idea del procedimiento te va seguir funcionando. Mepa que va por ahí, y asumo que si defino tipo T en el examen no va haber problema.

Para la segunda, a mi en particular siempre me queda más cómo utilizar celda dummy, es como que "más simple"; y algo que nunca supe si esta bien o mal es quitarla la misma antes de devolverla; es decir si voy a devolver una lista que voy generando con celda dummy al principio , antes del return le borro la misma. Supongo que está bien.

Mucho va como implementes.

Espero te ayude y si tenes más dudas tiralas nomás capaz nos podemos ayudar.

Saludos
Andrés