Abgabe als .py-Datei (bei mehreren Dateien als .zip komprimiert) an e.nie@campus.lmu.de bis 02.12.2021.
Für diese Aufgabe sind 2 Wochen eingeplant.
Implementiere den Daciuk-Algorithmus zum Erstellen eines Minimalen Lexikonautomaten nach dem CL Artikel (Seite 8-9) von Daciuk et al. Empfohlen wird auch Perez-Skript (Seite 19-20).
Das fertige Programm soll folgendermaßen aufgerufen werden:
dictionary = ["acker", "alle", "alraune", "as", "aspekt"] # Hier muss 'dictionary' eine sortierte (!) Liste von Wörtern sein.
min_dict = MinDict(dictionary)
Nützliche Vorüberlegungen:
Hinweis: Eine geeignete Datenstruktur zum Speichern der Übergänge eines Zustandes in das OrderedDict.
Zeichne den Automaten.
Hol Dir die Funktion draw_automaton()
aus Hausaufgabe 3, die einen Automaten mit graphviz
zeichnet, und modifiziere sie so, dass dein Lexikonautomat gezeichnet werden kann.