Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
faecher:informatik:oberstufe:adt:baeume:javabaum:start [07.02.2022 16:38] – sbel | faecher:informatik:oberstufe:adt:baeume:javabaum:start [01.05.2024 18:31] (aktuell) – [Eine Implementation in Java] Frank Schiebel | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Ein Binärbaum mit Java ====== | ====== Ein Binärbaum mit Java ====== | ||
- | Ein (Binär)Baum ist eine rekursive Datenstruktur: | + | Ein (Binär)Baum ist eine rekursive Datenstruktur. Bei jedem Knoten des Baums zeigen '' |
{{ : | {{ : | ||
+ | |||
+ | Die **Blätter** des Baums zeichnen sich dadurch aus, dass '' | ||
+ | |||
+ | ===== Eine Implementation in Java ===== | ||
+ | |||
+ | Mit diesen Überlegungen kann man sich die folgende Implementation in Java ansehen: https:// | ||
+ | |||
+ | Es gibt nur eine Klasse '' | ||
+ | |||
+ | Durch [[https:// | ||
+ | |||
+ | * Innere Knoten: Erhalten als Argumente einen Datenwert und die Wurzelknoten der Unterbäume '' | ||
+ | * Blattknoten: | ||
+ | |||
+ | ---- | ||
+ | {{: | ||
+ | === (A1) === | ||
+ | |||
+ | Untersuche die Klasse '' | ||
+ | |||
+ | * Top-Down, beginnend beim Wurzelknoten | ||
+ | * Bottom-Up, beginnend bei den Blättern | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | * Verifiziere jeweils durch die Inspizieren Funktion von BlueJ, dass die Baumstruktur wie gefordert stimmt, indem due beim Wurzelknoten beginnend den Pfaden folgst. | ||
+ | * Teste die Methode '' | ||
+ | |||
+ | ++++ Hilfestellung | | ||
+ | {{ : | ||
+ | ++++ | ||
+ | |||
+ | ---- | ||
+ | {{: | ||
+ | === (A2) === | ||
+ | |||
+ | Implementiere die Methoden '' | ||
+ | |||
+ | ++++ Lösungsvorschlag | | ||
+ | {{ : | ||
+ | ++++ |