Árbol binario equilibrado
La definición de árbol binario equilibrado:
Es un árbol vacío o el valor absoluto de la diferencia de altura entre sus subárboles izquierdo y derecho no excede 1, y tanto el izquierdo como el derecho los subárboles son uno Un árbol binario equilibrado Al mismo tiempo, un árbol binario equilibrado debe ser un árbol de búsqueda binario, pero no al revés.
Pregunta 1:
Convierta una matriz ascendente. en un árbol binario equilibrado
Al realizar un recorrido en orden en un árbol de búsqueda binario se puede obtener una matriz en orden ascendente. Luego, piénselo al revés: el valor mediano de la matriz es la raíz y luego la raíz. La matriz se divide en el subárbol izquierdo y el subárbol derecho, y la recursividad continúa. Se puede obtener el resultado
Pregunta 2:
Dado un árbol binario, determine si es un. árbol equilibrado
Primero escriba una función para calcular la altura del árbol binario
Altura del árbol = max (altura del subárbol izquierdo, altura del subárbol derecho) + 1
Después de obtener la altura, puede resolver de forma recursiva la diferencia de altura de los subárboles izquierdo y derecho de cada nodo en el árbol. Si hay una diferencia de altura mayor que 1, devuelva False
.