Top 150-InterviewMittel

Ausgewogener Binärbaum

Detaillierte Anleitung und Python-Implementierung für das Problem „Balanced Binary Tree“.

Problemstellung

Mittel

Bestimmen Sie bei einem gegebenen Binärbaum, ob er höhenausgeglichen ist.

Ein höhenbalancierter Binärbaum ist ein Binärbaum, bei dem sich die Tiefe der beiden Teilbäume jedes Knotens nie um mehr als eins unterscheidet.

Der Baum wird als Liste mit Ebenenreihenfolge dargestellt. Implementieren Sie eine Funktion isBalanced(root: list) -> bool.

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

Beispiele

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?
Erwägen Sie die Verwendung von Trees-spezifischen Datenstrukturen wie Sets oder Heaps.
Edge Cases to Watch
  • Leere Eingabestrukturen
  • Einzelelementeingaben
  • Große numerische Grenzen

Bereit zur Lösung?

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

Im Editor öffnen
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

Empfohlene Python-Ressourcen

Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.