Heim > Java > javaLernprogramm > Hauptteil

Was sind die rekursiven und nicht rekursiven Durchlaufmethoden des Java-Binärbaums?

WBOY
Freigeben: 2023-04-24 13:04:14
nach vorne
1375 Leute haben es durchsucht

Vorwort

Die Durchquerungsmethoden von Binärbäumen sind in Durchquerung vor der Bestellung, Durchquerung mittlerer Ordnung, nachfolgende Durchquerung und Durchquerung der Ebenenordnung unterteilt.

Was sind die rekursiven und nicht rekursiven Durchlaufmethoden des Java-Binärbaums?

1. Rekursive Durchquerung

Für die Rekursion müssen wir über die drei Elemente der Rekursion sprechen: Vorbestellungsdurchquerung als Beispiel#🎜 🎜#

Rekursive Eingabeparameter und Rückgabewerte

Da der Wert des Vorbestellungs-Traversalknotens gedruckt werden soll, muss der Wert des Knotens in der Liste übergeben werden Im Parameter ist es nicht erforderlich, bei der Verarbeitung von Daten einen Wert zurückzugeben, daher lautet der Rückgabetyp der rekursiven Funktion wie folgt:

public void preorder(TreeNode root, List<Integer> result)
Nach dem Login kopieren
#🎜🎜 #Bestimmen Sie die Beendigungsbedingung

Während des Rekursionsprozesses wird davon ausgegangen, dass die Rekursion beendet ist. Natürlich ist der aktuell durchquerte Knoten leer, sodass die Rekursion dieser Ebene kurz vor dem Ende steht. Wenn also der aktuell durchquerte Knoten leer ist, kehren Sie einfach direkt zurück Bei der Rekursion wird zuerst der Wert des mittleren Knotens verwendet. Der Code lautet wie folgt:

if (root == null) return;
Nach dem Login kopieren
rree

2. Einheitliche Iterationsmethode des Binärbaums# 🎜🎜#

result.add(root.val);
preorder(root.left, result);
preorder(root.right, result);
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWas sind die rekursiven und nicht rekursiven Durchlaufmethoden des Java-Binärbaums?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage