• Keine Ergebnisse gefunden

8. ¨Ubungsblatt Aufgabe 1

N/A
N/A
Protected

Academic year: 2022

Aktie "8. ¨Ubungsblatt Aufgabe 1"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Algorithmen und Datenstrukturen Fachhochschule Wiesbaden

Sommersemester 2007 Prof. Dr. Steffen Reith

8. ¨ Ubungsblatt

Aufgabe 1 (L¨osung wird abgenommen) (B¨aume) Zur vollst¨andigen Bearbeitung dieser Aufgabe sind die folgenden Punkte zu be- arbeiten:

Implementieren Sie den abstrakten Datentyp einesbin¨aren (Such)Baums in JAVA mit Hilfe von Generics als eigene Klasse. Zu implementieren sind die Methoden insert, PrintTreeInorder, getHeight und isEmpty.

Beispiel f¨ur die Schnittstelle:

public interface Tree<E>

{

// F¨uge den Schl¨ussel x in den Baum ein public boolean insert(E x);

// Gebe alle Schl¨ussel gemaess inorder-Traversierung aus public void printTreeInorder();

// Berechne die H¨ohe des Baums public long getHeight();

// Teste ob Baum leer public boolean isEmpty();

};

public class NodeTree<N> implements Tree<N> { private class Node<E>{.... Analog ¨Ubung 7 ...}

// Rest der Implementierung }

Die MethodeprintTreeInordergibt alle Elemente des Baums gem¨aß Inorder- Traversierung aus. Sie k¨onnen davon ausgehen, dass sich der DatentypT mit den ¨ublichen Methoden ausgeben l¨asst.

Erweitern Sie Ihren generischen Datentyp Tree um die Methode merge- Inorder(Tree<E> tree), die alle Elemente aus dem Baum tree gem¨aß Inorder-Traversierung in den aktuellen Baum einf¨ugt.

(2)

Schreiben Sie ein Testprogramm mit zweiint-B¨aument1undt2, die mit je 100 Zufallszahlen bef¨ullt werden, wobei die Zufallszahlen f¨urt1 aus dem In- tervall [1, . . . ,1000] stammen und die f¨urt2aus dem Intervall [1001, . . . ,2000].

Danach soll Ihr Testprogramm die H¨ohen vont1undt2ausgeben. Nun ver- schmelzen Siet1mitt2unter Benutzung vonmergeInorder(t2)und geben die H¨ohe des verschmolzenen Baums aus.

– Wie erkl¨aren Sie das Ergebnis der verh¨altnism¨assig großen H¨ohe des verschmolzenen Baums?

– Planen (Pseudocode notwendig!) und implementieren Sie eine mitmerge- Inordervergleichbare Methode, die einen Baum mit deutlich kleinerer H¨ohe liefert (Hinweis: ¨Uberlegen Sie sich eine geeignete Traversierungs- strategie f¨ur Ihre merge-Methode).

Die Abnahme erfolgt in der KW 22 vom 28.5.2007 - 01.6.2007 in den jewei- ligen ¨Ubungsgruppen

Ubungsaufgaben ¨

Richtig oder falsch:

– Mergesort hat immer eine Laufzeit von O(nlogn).

– Insertion Sort hat immer eine Laufzeit vonO(nlogn).

– Es gibt Sortierverfahren mit einer Laufzeit von O(logn).

Geben Sie die Laufzeit von Insertion Sort an und begr¨unden Sie Ihre Antwort fundiert.

Gegeben sei T(n) = 3·T(n/3) +n undT(1) = 0. Bestimmen Sie eine Funktionf, so dass T(n) =f(n). Dabei darf T nicht in der Beschreibung von f vorkommen.

Kann man in einer linearen Liste effizient mit der bin¨aren Suche arbeiten? Be- gr¨unden Sie Ihre Antwort!

2

Referenzen

ÄHNLICHE DOKUMENTE

The R-tree [3] and the R*-tree [4], spatial access methods with a hierarchically structured directory that use minimum bounding rectangles (MBRs) as page regions, have primarily

• A source predicate is projected to a target token if all of the following con- ditions are fulfilled: (1) the English predicate is a verb or its roleset has a link to a verb

• Long temperature reconstructions for the temperate lowlands based on tracheid and vessel parameters are next!.. (2013): Applying CLSM to increment core surfaces for

An Evolutionary Algorithm with Solution Archive for the Generalized Minimum Spanning..

We now proceed to study the expressiveness, stability, and run-time performance of approximate tree kernels in real-world applications, namely supervised learning tasks dealing

• Erweitern Sie nun Ihren bin¨ aren Suchbaum um die Methode mergeInorder, die alle Elemente aus einem zweiten Baum gem¨ aß Inorder-Traversierung in den aktuellen Baum einf¨ ugt,

In contrast to previous works that use smooth generalized cylinders to represent tree branches, our method generates realistic looking tree models with complex branching geometry

Vorteile Tiefensuche von der Wurzel zum aktuellen Knoten wird die Baumprojektion einfach durchgereicht Nachteile Tiefensuche. passt am Anfang nicht in Hauptspeicher,