Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

SWE1 / Übung 10 (19.01.2011) Rekursion Binärbäume.

Ähnliche Präsentationen


Präsentation zum Thema: "SWE1 / Übung 10 (19.01.2011) Rekursion Binärbäume."—  Präsentation transkript:

1 SWE1 / Übung 10 ( ) Rekursion Binärbäume

2 Rekursion – Definition und Eigenschaften
Methode, die sich selbst aufruft Rekursion umfasst immer Abbruchbedingung(en) (Rekursionsanker: Ausstieg/Rückkehr aus der Rekursion) Rekursive(n) Aufruf(e) Indirekte Rekursion Zwei oder mehrere Methoden rufen sich gegenseitig auf Nur eine dieser Methoden muss eine Abbruchbedingung bereitstellen Meist ineffizienter als iterative Lösung Oft klarer als iterative Lösung Fibonacci fib(n) = f(n-1) + f(n-2) für n>=2 f(0) = 0 und f(1) = 1 REKURSIONSANKER Fakultät Fak(n) { wenn n<=1 dann return 1; REKURSIONSANKER sonst (n * Fak(n-1)); Ineffizienz, zb. Speicherbedarf da alle lokalen Variablen gesichert werden müssen (Stack); bei Rückkehr/Aufstieg aus der Rekursion müssen diese dann restauriert werden; Speicherbedarf: Speicher lokaler Variablen * Anzahl (max.) Rekursionsschritte.

3 Rekursive Algorithmen: Grundstruktur
Rekursion(){ if (Abbruchbedingung){ –– Rekursionsanker löse einfaches Problem; gib Ergebnis zurück; } else { –– rekursiver Aufruf zerlege Problem in einfachere(s) Problem(e) und rufe Rekursion() für diese(s) kleinere(n) Problem(e) auf; vereinige einfachere Lösung(en); } Fibonacci fib(n) = f(n-1) + f(n-2) für n>=2 f(0) = 0 und f(1) = 1 REKURSIONSANKER Fakultät Fak(n) { wenn n<=1 dann return 1; REKURSIONSANKER sonst (n * Fak(n-1)); Ineffizienz, zb. Speicherbedarf da alle lokalen Variablen gesichert werden müssen (Stack); bei Rückkehr/Aufstieg aus der Rekursion müssen diese dann restauriert werden; Speicherbedarf: Speicher lokaler Variablen * Anzahl (max.) Rekursionsschritte.

4 Binärer Suchbaum Ein Binärbaum ist entweder leer oder er besteht aus einem Knoten dem ein Element und zwei binäre Bäume zugeordnet sind (rekursive Definition) Bei einem Binären Suchbaum sind die Elemente sortiert: Alle Elemente im linken Teilbaum eines Knoten sind kleiner als das Knotenelement, alle Elemente im rechten Teilbaum sind größer (oder gleich) als das Knotenelement < 4 >

5 Binärer Suchbaum Binärbaum: Knoten K mit zugeordnetem E und zwei binären Bäumen B1 und B2 (rekursive Definition) B K B2 B1 E B K E B K E

6 Traversierung Pre Order (Wurzel, links, rechts)
In Order (links, Wurzel, rechts) Post Order (links, rechts, Wurzel) Linz Graz Wels Enns Lienz < 6 >

7 Überlegungen zur Implementierung
Operationen auf Bäume Anlegen eines Baumes Einfügen von Knoten Suchen von Knoten Traversierung (Löschen von Knoten) Aufteilung Funktionalität Baum hat Verweis auf Wurzelknoten Einfügen, Suchen von Knoten Traversierung Löschen von Knoten Knoten hat Verweis auf linken und rechten Teilbaum kennt Inhalt (Element) < 7 >


Herunterladen ppt "SWE1 / Übung 10 (19.01.2011) Rekursion Binärbäume."

Ähnliche Präsentationen


Google-Anzeigen