• Keine Ergebnisse gefunden

5. ¨Ubung zur Vorlesung

N/A
N/A
Protected

Academic year: 2022

Aktie "5. ¨Ubung zur Vorlesung"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Otto-von-Guericke-Universit¨at Magdeburg Fakult¨at f¨ur Informatik

Dr. Ralf Stiebe

email:stiebe@iws.cs.uni-magdeburg.de

5. ¨Ubung zur VorlesungTextalgorithmen

Wintersemester 2006/07 10.1.2007

Termin: 22.1.2007

Aufgabe 5.1:

Konstruieren Sie f¨urS=abcabbabcaaden Suffixbaum (nach dem Algorithmus von McCreight).

Aufgabe 5.2:

Konstruieren Sie f¨urS=f itzef itzef atze

(a) das Suffix-Array und das inverse Suffix-Array mittels Verfeinerung, (b) das LCP-Array,

(c) den Baum der LCP-Intervalle.

Aufgabe 5.3:

Ein Wort α heißt eindeutiges Teilwort (unique match) von S, wenn es genau einmal in S vor- kommt.

(a) Wie sind die eindeutigen Teilw¨orter vonS durch den Suffixbaum charakterisiert?

(b) Entwickeln Sie aus der Charakterisierung einen Linearzeitalgorithmus zur Bestimmung des k¨urzesten eindeutigen Teilwortes vonS.

Aufgabe 5.4:

Zeigen Sie, dass die supermaximalen Wiederholungen in einem Wort S wie folgt mit Hilfe des Suffix-ArraysA sowie des LCP-Arrays LCP von S charakterisiert werden k¨onnen.

Das Wortαder L¨ange`ist genau dann eine maximale Wiederholung inS, wenn es Indizesi < j mit folgenden Eigenschaften gibt:

1. LCP[i−1]< `,LCP[i] =LCP[i+ 1] =· · ·=LCP[j−1] =`,LCP[j]< `.

2. Die ZeichenS[A[i]−1],S[A[i+ 1]−1],. . . ,S[A[j]−1] sind paarweise verschieden.

3. An der PositionA[i] von S kommtα vor.

Entwickeln Sie mittels dieser Charakterisierung einen Linearzeitalgorithmus zur Bestimmung aller supermaximalen Wiederholungen in S.

Referenzen

ÄHNLICHE DOKUMENTE

[r]

(5 + 10 + 10 = 25 Punkte f¨ ur diesen Teil) In einem Beh¨ alter mit einer durchl¨ assigen Trennwand a, wird der Druck auf beiden Seiten der Trennwand durch entsprechende Bewegung

In einem Beh¨ alter mit einer durchl¨ assigen Trennwand a, wird der Druck auf beiden Seiten der Trennwand durch entsprechende Bewegung des Kolbens konstant gehalten.. Gas aus der

läuft durch die array Elemente setzt das erste array Element auf 500 setzt das zweite array Element auf 1000 setzt das dritte array Element auf 3000. setzt das vierte

(Hinweis: es wird in mehreren Räumen gleichzeitig geschrieben. Der genaue Raum für Sie wird kurz vorher auf Webseite oder

[r]

[r]

Teil 1: Schreiben Sie ein Programm, das das innere Produkt zweier Vektoren berechnet, wobei die Berechnung innerhalb einer Schleife erfolgen soll. Der korrekte Programmlauf muss