Dado un árbol binario de búsqueda (BST) de enteros no vacío, implementa dos funciones que devuelvan el valor mínimo y el valor máximo del árbol, respectivamente.
/**
* @brief Devuelve el valor mínimo de un BST.
*
* @param t Un árbol binario de búsqueda.
* @pre `t` no está vacío.
* @returns El valor mínimo de `t`.
*/
int bst_minim(BinTree<int> t);
/**
* @brief Devuelve el valor máximo de un BST.
*
* @param t Un árbol binario de búsqueda.
* @pre `t` no está vacío.
* @returns El valor máximo de `t`.
*/
int bst_maxim(BinTree<int> t);
La entrada consiste en una secuencia de árboles binarios de búsqueda de enteros no vacíos, en formato visual.
Para cada árbol, una línea con el valor mínimo y el valor máximo, separados por un espacio.
Los ficheros públicos (icono del gatito) son: la clase
BinTree (fichero bintree.hh), la
entrada/salida de BinTree (bintree-io.hh) y el
programa principal. También hay un Makefile y el directorio
.vscode con la configuración para compilar y depurar con
VSCode.
Debes implementar bst_minim y bst_maxim en
un fichero .cc nuevo, compilar (está
preparado para poder compilar y depurar con VSCode), y finalmente
enviar solo el fichero con las dos funciones.
Input
visual
10
|-- 5
| |-- 2
| '-- 7
'-- 15
|-- 12
'-- 20
3
50
|-- 25
| |-- 10
| | |-- 5
| | '-- #
| '-- 30
'-- 75
|-- #
'-- 100
Output
2 20 3 3 5 100