Binärbaum-Max-Knoten
Ein perfekter Binärbaum der Höhe 3 hat 15 Knoten, davon 8 Blätter, verteilt auf 1, 2, 4 und 8 pro Ebene. Geben Sie eine Höhe von 0 bis 52 ein und erhalten Sie die Höchstzahl an Knoten, Blättern und inneren Knoten. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- Höhe
- 3
- Maximale Knotenanzahl
- 15
- Maximale Blattanzahl
- 8
- Maximale Anzahl innerer Knoten
- 7
- Knoten auf der Ebene
- 1, 2, 4, 8
Wenn Sie einen vollständigen oder perfekten Binärbaum für Kapazitätsplanung, Interviewvorbereitung oder heap-basierte Strukturen dimensionieren, lautet die erste Frage meist, wie viele Knoten und Blätter bei einer gegebenen Höhe passen. Dieser Rechner für maximale Binärbaum-Knoten akzeptiert eine nichtnegative ganzzahlige Höhe unter der standardmäßigen nullbasierten Konvention —ein Ein-Knoten-Baum hat Höhe null— und liefert die geschlossenen Maxima eines perfekten Binärbaums: Gesamtknoten gleich zwei hoch Höhe plus eins, minus eins, und Blätter gleich zwei hoch Höhe. Er meldet außerdem interne Knoten und die exakte Knotenzahl pro Ebene, damit Sie über Speicher, Array-Länge eines binären Heaps oder Verzweigungsfaktoren nachdenken können, ohne den Baum von Hand zu zeichnen.
Höhenkonvention und geschlossene Maxima
Die Höhe des Binärbaums ist hier als die Anzahl der Kanten auf dem längsten Pfad von der Wurzel zu einem Blatt definiert, sodass eine alleinige Wurzel Höhe null hat, eine Wurzel mit zwei Kindern Höhe eins, und ein perfekter Baum mit vier Knotenebenen Höhe drei. Unter dieser Konvention ist jeder perfekte Binärbaum der Höhe h strukturell eindeutig: Ebene null hält einen Knoten, Ebene eins zwei, und Ebene i hält zwei hoch i Knoten, bis Ebene h.
Die Summe der geometrischen Reihe von i gleich null bis h ergibt zwei hoch h plus eins, minus eins Gesamtknoten —die klassische Folge 1, 3, 7, 15, 31—. Die letzte Ebene allein hält zwei hoch h Blätter, was zugleich die maximale Blattzahl ist, die ein Binärbaum der Höhe h haben kann, wenn jeder innere Knoten voll ist und der Baum unten vollständig ist. Innere Knoten entsprechen Gesamtknoten minus Blätter, was sich zu zwei hoch h minus eins vereinfacht.
Diese Identitäten nutzen Lehrbücher, Algorithmus-Interviews und Heap-Kapazitätsformeln; dieser Endpunkt kodiert sie, damit Sie den Exponenten nicht um eins verfehlen und nullbasierte Höhe nicht mit der einbasierten Ebenenzählung älterer Quellen verwechseln. Wenn Ihr Ausgangsmaterial einen Ein-Knoten-Baum als Höhe eins bezeichnet, subtrahieren Sie eins vor dem Aufruf des Rechners, damit die Formeln konsistent bleiben.
Wo Binärbaum-Kapazitätsmathematik sich lohnt
Interviewvorbereitung und Algorithmus-Kurse nutzen einen Binärbaum-Max-Knoten-Rechner, um Hausaufgaben zu perfekten Bäumen zu prüfen und zwischen Höhe, Ebenenzählungen und Array-Längen binärer Heaps im zusammenhängenden Speicher umzurechnen. Systemingenieure dimensionieren Nachrichten-Fan-out-Bäume, Entscheidungsbäume fester Tiefe und Segment-Tree-ähnliche Layouts, indem sie fragen, wie viele Blätter in Tiefe h sitzen, bevor Puffer alloziert oder eine Höhengrenze gewählt wird. Spiel- und Simulationscode, der vollständige binäre Raumpartitionen baut, braucht oft das Knotenbudget im Voraus, damit Object-Pools und GPU-Puffer dem theoretischen Maximum entsprechen.
Fehlgeschlagene Validierung wird nicht berechnet. Halten Sie height im dokumentierten Bereich, pinnen Sie die Ganzzahlfelder in Tests, und Sie erhalten reproduzierbare Kapazitätszahlen für Unterricht, LMS-Plugins und Edge-Worker, ohne eine eigene Graphenbibliothek aufzubauen.
Anwendungsfälle
Interview- und Hausaufgabenprüfungen
Prüfen Sie maximale Knoten und Blätter eines perfekten Binärbaums der Höhe h gegen Lehrbuchformeln ohne Off-by-one-Höhenfehler.
Binär-Heap- und Array-Kapazität
Berechnen Sie, wie viele Array-Plätze ein vollständiger binärer Heap der Höhe h braucht, bevor Speicher alloziert oder ein Tiefenlimit gewählt wird.
Fan-out- und Entscheidungsbaum-Dimensionierung
Planen Sie Blattkapazität und internes Knotenbudget für binäre Partitionen fester Tiefe, Nachrichten-Bäume oder Simulations-Raumaufteilungen.
Häufige Fragen
Wie viele Blätter kann ein Binärbaum der Höhe h haben?
Höchstens 2^h Blätter in einem perfekten Binärbaum. Das ist auch die Größe der letzten Ebene, wenn jede Ebene voll ist.
Warum ist die Höhe auf 52 begrenzt?
Damit 2^(h+1)−1 in sicheren JavaScript-Ganzzahlen bleibt (≤ 2^53−1). Größere Höhen würden in dieser Laufzeitumgebung exakte Ganzzahlpräzision verlieren.
Wie lautet die Formel für die maximale Knotenzahl eines Binärbaums?
Für die Höhe h, gezählt in Kanten, lautet sie 2^(h+1) − 1: Jede Ebene hat doppelt so viele Knoten wie die darüber, und die Summe ergibt die Folge 1, 3, 7, 15, 31.
Was, wenn mein Lehrbuch einem einzelnen Knoten die Höhe 1 gibt?
Dann zählt es Ebenen statt Kanten. Ziehen Sie von dieser Höhe eins ab, bevor Sie sie eingeben, damit die Formeln stimmen: Hier hat eine einzelne Wurzel die Höhe 0, eine Wurzel mit zwei Kindern die Höhe 1.
Wie viele innere Knoten hat ein perfekter Binärbaum?
Immer einen weniger als Blätter: 2^h − 1 innere Knoten gegenüber 2^h Blättern. Ein Baum der Höhe 0 ist ein einzelner Knoten, der zugleich Blatt ist, und hat daher keinen inneren Knoten.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/dev/binary-tree-max-nodes \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"height":3}'const res = await fetch("https://api.kit.forhosting.com/dev/binary-tree-max-nodes", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"height": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/binary-tree-max-nodes",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"height": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/binary-tree-max-nodes", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"height":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"height":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/binary-tree-max-nodes", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"height": 3
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.binary_tree_max_nodes",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Ungültige Höhen scheitern mit invalid_input und werden nicht berechnet.
Eingabevertrag, Antwortfelder und sichere Grenzen
Kombinieren Sie die Zahlen mit Ihrer eigenen Zeichnung oder Ihrem Speichermodell, wenn Sie Layout-Diagramme brauchen; dieser Endpunkt liefert nur Kapazitätszahlen und die Ebenenaufteilung, niemals ein serialisiertes Baumobjekt oder ein Graphbild. Senden Sie per POST einen JSON-Body mit einem Pflichtfeld: height, eine ganze Zahl von null bis zweiundfünfzig einschließlich. Werte können als JSON-Ganzzahlen oder numerische Zeichenketten ankommen; fehlende Felder, Nicht-Ganzzahlen, Negative, nicht endliche Werte und Höhen über zweiundfünfzig scheitern mit invalid_input und benennen das Problem. Die Obergrenze hält max_nodes gleich zwei hoch Höhe plus eins minus eins innerhalb der sicheren JavaScript-Ganzzahlen (höchstens zwei hoch dreiundfünfzig minus eins), sodass Goldens und Clients exakte Ganzzahlen statt Gleitkomma-Näherungen vergleichen. Bei Erfolg spiegelt der Body height und liefert max_nodes, max_leaves, max_internal_nodes, nodes_at_level als Array der Länge Höhe plus eins, wobei Index i zwei hoch i ist, sowie eine kurze formula-Zeichenkette mit den geschlossenen Formen. Beispiel: Höhe drei ergibt max_nodes fünfzehn, max_leaves acht, max_internal_nodes sieben und nodes_at_level eins, zwei, vier, acht. Höhe null ergibt einen einzelnen Knoten, der auch Blatt ist: max_nodes eins, max_leaves eins, max_internal_nodes null.
Wo Binärbaum-Kapazitätsmathematik sich lohnt
Weil die Implementierung reines Parse-Tier-A ist, kostet jeder erfolgreiche Aufruf den veröffentlichten Basispreis $0.002 ohne Modell-Tokens und ohne ausgehendes Netz.
Technische Fragen
Wie viele Knoten hat ein Binärbaum der Höhe h maximal?
Mit Höhe null für einen einzelnen Knoten gilt max_nodes = 2^(h+1)−1. Senden Sie height als Ganzzahl 0..52; die API liefert max_nodes, max_leaves (2^h) und nodes_at_level.
Ist Höhe null erlaubt?
Ja. Höhe 0 ist ein Ein-Knoten-Baum: max_nodes 1, max_leaves 1, max_internal_nodes 0. Negative Höhen werden als invalid_input abgelehnt.
Was kostet der Binärbaum-Max-Knoten-Rechner?
Das Browser-Werkzeug ist kostenlos. API-Anfragen nutzen das vorausbezahlte KIT-Guthaben zu $0.002 pro erfolgreichem Aufruf; ungültige Eingabe wird nicht berechnet.