Top 150 des entrevuesMoyen

Arbre binaire équilibré

Guide détaillé et implémentation de Python pour le problème 'Balanced Binary Tree'.

Énoncé du problème

Moyen

Étant donné un arbre binaire, déterminez s’il est équilibré en hauteur.

Un arbre binaire équilibré en hauteur est un arbre binaire dans lequel la profondeur des deux sous-arbres de chaque nœud ne diffère jamais de plus d'un.

L'arborescence est représentée sous la forme d'une liste par ordre de niveaux. Implémentez une fonction isBalanced(root: list) -> bool.

Contraintes
  • The number of nodes in the tree is in the range [0, 5000]
  • -10000 <= Node.val <= 10000

Exemples

Example 1
Input
[3,9,20,None,None,15,7]
Output
True
Explanation

The left subtree (rooted at 9) has depth 1, and the right subtree (rooted at 20) has depth 2. The difference is 1, so the tree is balanced.

Example 2
Input
[1,2,2,3,3,None,None,4,4]
Output
False
Explanation

The left subtree has depth 3 while the right subtree has depth 1. The difference is 2, so the tree is not balanced.

Example 3
Input
[]
Output
True
Explanation

An empty tree is considered balanced.

Need a Hint?
Pensez à utiliser des structures de données spécifiques aux arbres, comme des ensembles ou des tas.
Edge Cases to Watch
  • Structures d'entrée vides
  • Entrées à élément unique
  • Grandes limites numériques

Prêt à résoudre ?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Ouvrir dans l'éditeur
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Ressources Python recommandées

Développez vos connaissances avec des didacticiels interactifs, des aide-mémoire et des comparaisons de codes associés.