Algorithm Engineering
„Suffix-Bäume und Suffix-Arrays“
Stefan Edelkamp
Übersicht
Suffix-Mehrwegsuchbaum (-Trie)
Patricia-Bäume
Suffix-Bäume
Konstruktion von Suffix-Bäumen nach McCreight
Generalisierte Suffix-Bäume
Suffix-Arrays
Suffix-Tries
Definierende Eigenschaft
Suffix-Bäume (aka Suffixbäume)
Suffixbaum für den String 11010$
Definitionen
Notation
Definierende Eigenschaft
Beweis
Konstruktion von Suffix-Bäumen
Naives Verfahren
Beweis
Visualisierung
Algorithmus von McCreight
Algorithmus
Zentrale Eigenschaft
Invarianten des Algorithmus
Bezeichnungen
Schritt 1: Einfügen des Ortes von headi+1
Schritt 2: Einfügen des Suffix- Zeigers für den Ort von headi+1
Korrektheit
Zu zeigen:
Beispiel
Analyse: Algorithmus von McCreight
to be continued …
Analyse Rescannen
Analyse Scannen
Beispiel
Beispiel (ctd.)
Pseudo Code
Verwendung von Suffix-Bäumen
Generalisierte Suffix-Bäume
Beispiel
Beobachtungen
Beispiel
Löschen von Strings
Erkenntnisse
Korrektheit
Invarianz
Pseudo-Code
Pseudo- Code
Suffix-Arrays
Eigenschaft
Beispiel
Engineering