Universidad de Costa Rica
|
|
lkptr
"
Child(n)
|
Acceso al "n "-ésimo hijo |
TL
|
TV
|
operator * ()
|
Acceso al valor almacenado en la raíz |
TL
|
TV
|
Change_Root(d)
|
Sustituye por "d " el valor almacenado en la raíz |
TL
|
TV
|
Erase()
|
Elimina el árbol y sus descendientes |
TL
|
TV
|
Father()
|
Acceso al padre |
TL
|
TV
|
Graft(n,Ti)
|
Injerta "Ti " como "n "-ésimo hijo |
TL
|
TV
|
Utilice los punteros inteligentes
"lkptr
"
para crear la clase "Arbol_Binario
", cuyas operaciones principales se muestran arriba. Para mostrar que su clase funciona, haga un programa de prueba que incluya el ordenamiento de un grupo de números usando el árbol binario
para ordenarlos. Implemente también la función
"Mirror()
"
y la función
"Copy_Deep()
" pero hágalo sin
méteresele al
Rep.
Recuerde que en el Rep debe utilizar únicamente punteros inteligentes de manera que su árbol esté compuesto de sub-árboles. Además, el programador cliente de su árbol no debe ver los nodos que lo componen. Puede usar como referencia los árboles descritos en este artículo:
http://www.di-mare.com/adolfo/p/TreeCpp.htm
Si no desea utilizar
plantillas, puede usar el truco del Tdef.h
:
Tdef.h
para la enseñanza de plantillas C++"
I Congreso Internacional de Computación 2005,
Universidad Nacional de Costa Rica,
setiembre 2005.
http://www.di-mare.com/adolfo/p/tdef.htm
Entregue su tarea por correo electrónico, como lo hizo anteriormente.
Tiempo de entrega: | 10 días |
|
|
Primera etapa: | 7 días | ||
Modalidad: | En parejas |
Adolfo Di Mare <adolfo@di-mare.com>.
|