Árboles balanceados

Los árboles binarios con valores en los nodos se pueden definir por

Por ejemplo, el árbol

se puede representar por

Diremos que un árbol está balanceado si para cada nodo la diferencia entre el número de nodos de sus subárboles izquierdo y derecho es menor o igual que uno.

Definir la función

tal que (balanceado a) se verifica si el árbol a está balanceado. Por ejemplo,

Soluciones

A continuación se muestran las soluciones en Haskell y las soluciones en Python.


Soluciones en Haskell


Soluciones en Python