Ejercicios de BSTs

[minNode] Para la clase BST que hemos discutido en clase, diseña un member function int minNode() const que devuelve el valor del elemento con valor mínimo. Por ejemplo, para el siguiente grafo devolvería 4. https://i.imgur.com/rwhQ78y.png

[isBST] Imagina que hemos creado una clase llamada BT para árboles binarios (no necesariamente BSTs), diseña un member function bool isBST() const que devuelve true si el árbol es binario de búsqueda. Por ejemplo, para el siguiente grafo devolvería true.

https://i.imgur.com/rwhQ78y.png

Pero para el siguiente devolvería false

https://i.imgur.com/o97JIv6.png

[printOdds] Para la clase BST que hemos discutido en clase, diseña un member function void printOdds() const que imprime los nodos del árbol que tengan valores impares. Por ejemplo, para el siguiente árbol imprimirá 11 21 23

https://i.imgur.com/W0CNw5M.png.

[isEqual] Para la clase BST que hemos discutido en clase, diseña un member function bool isEqual(const BST &b) const que devuelve true solo si el BST que invocó y el que están pasando como parámetro son iguales.

[avgOfPrecSuc] Para la clase BST que hemos discutido en clase, diseña un member function float avgOfPrecSuc() const que devuelve el promedio del precesor y sucesor de la raíz del árbol. Por ejemplo, el resultado sería 12 para el siguiente árbol.

https://i.imgur.com/MKOQlDT.png

El resultado sería 38.5 para el siguiente árbol.

https://i.imgur.com/ycvNSiK.png

[leafSum] Para la clase BST que hemos discutido en clase, diseña un member function int leafSum() const que devuelva la suma de las hojas del árbol. Por ejemplo, para el siguiente árbol el resultado sería 34.

https://i.imgur.com/MKOQlDT.png