Gegeben ein Binärbaum mit einer ganzen Zahl, Left & Rechte Zeiger, wie kann man den Baum in O (n) -Zeit und O (1) Extra-Speicher durchlaufen (kein Stapel/Warteschlange/Rekursion)?So durchlaufen Sie einen Binärbaum in O (n) -Zeit ohne zusätzlichen Speicher
This guy ergab eine Lösung, die nicht O (n) Gesamtzeit ist, die den aktuellen Pfad als Ganzzahl codiert (und daher für Bäume mit begrenzter Tiefe funktioniert).
Ich bin für die klassische Lösung
(SPOILER)
, die die Eltern jedes Knotens in den Kindern codiert.
Hat jeder Knoten einen Elternzeiger? – Richard
Genau wie wird Rekursion als "Extra-Speicher" betrachtet? –
Unbegrenzte Rekursion verwendet Stapelspeicher, normalerweise mehr als O (1). – ripper234