• Keine Ergebnisse gefunden

Übungen Algorithm Engineering - Blatt 3 Abgabe 17.5.2010, Besprechung 20.5.2010

N/A
N/A
Protected

Academic year: 2021

Aktie "Übungen Algorithm Engineering - Blatt 3 Abgabe 17.5.2010, Besprechung 20.5.2010"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Übungen Algorithm Engineering - Blatt 3

Abgabe 17.5.2010, Besprechung 20.5.2010

1. (BDD-Basierte Suche)

(a) Zeigen Sie, dass das strong pre-image auf das pre-image zurückführbar ist.

(b) Wie viele Buckets der Matrix müssen bei BDDA* maximal expandiert werden, wenn die opti- male Lösungslängembeträgt?

2. (Perfektes Hashing mit BDDs)

(a) Zeichnen Sie das (RO)BDD für die Funktion((a∧b)∨(c⇔d))∧¬efür die Variablenordnung π= (a, b, c, d, e).

(b) Bestimmen Sie den Sat-Count aller BDD-Knoten und tragen Sie ihn im BDD ein.

(c) Bestimmen Sie mit der Rank-Funktion den Rang von¬abcd¬e(alsorank(01110)).

(d) Bestimmen Sie über die Unrank-Funktion den Zustand mit Rang3(alsounrank(3)).

3. (Einfaches String-Matching)

Finden Sie alle Vorkommen (absolute Indizes) des Wortesloveinfortune (a) mit dem naivenO(nm)Algorithmus zur Mustererkennung in Texten.

(b) mit dem Algorithmus von Rabin Karp. Definieren Sie dabei eine geeignete Hashfunktion auf dem ASCII Zeichensatz.

(c) durch den Algorithmus von Knuth-Morris-Pratt (inklusive Konstruktion der Fehlerfunktion).

Sie finden die entsprechende Datei auf der Übungsseite zur Vorlesung.

Aufgrund der Größe des Wortschatzes wird empfohlen, die drei Algorithmen (in einer Programmier- sprache Ihrer Wahl) zu implementieren.

4. (Aho-Corasick)

(a) Zeichnen Sie den Mehrwegsuchbaum (Trie) mit Fehlerfunktion zu den Zeichenketten1100110, 1011001und10101überΣ ={0,1}.

(b) Geben Sie den abgeleiteten endlichen Automaten zur Teilstringerkennung an (Zeichnung und Übergangstabelle).

(c) Finden Sie alle Vorkommen von1?0?0in10010010010110110010100110100011000.

1

Referenzen

ÄHNLICHE DOKUMENTE

Entwickleln Sie Möglichkeiten, um diophantische Gleichungen auch in nicht-euklidischen Bereichen zu lösen. Beliebige diophantische Gleichungen über

Analyse praktikabler Algorithmen zwecks Etablierung von Leistungsgarantien, die Theorie und Praxis näher bringen. Implementierungen, die Lücken zwischen bestem

Analyse praktikabler Algorithmen zwecks Etablierung von Leistungsgarantien, die Theorie und Praxis näher bringen. Implementierungen, die Lücken

(a) Programmieren Sie die Konstruktion eines Cartesischen Baums aus einem Array von n Ele- menten mit Hilfe von maximal drei Zeiger, der zum adaptiven Heapsort (Adaptive

Um einen worst-case effizienten Heap-Speicher mit maximal zwei perfekten Weak-Heaps ei- ner Höhe zu bauen, benötigt man ein redundantes Zahlensystem, in dem Einfügungen von Weak-

(c) Beschreiben Sie, wie man in einem Suffixbaum nach allen Teilzeichen- ketten suchen kann, die lexikographisch zwischen zwei Zeichenketten m 1?. und m 2 fallen, z.B., liegt

(a) Abhängigkeitsgraphen für die approximative Zeichenkettensuche (b) Spurgraphen für die

Finden sie alle Vorkommen (absolute Indizes) des Worts love in fortune (a) mit den naiven O(nm) Algorithmus zur Mustererkennung in Texten.. (b) mit den Algorithmus von