• Keine Ergebnisse gefunden

Suchalgorithmen Pr¨ufungsstoff

N/A
N/A
Protected

Academic year: 2021

Aktie "Suchalgorithmen Pr¨ufungsstoff"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Suchalgorithmen Pr¨ufungsstoff 1. Du kannst die Suche in einem Array als Entscheidungs- und als Berechnungsproblem

beschreiben.

2. Sequentielle Suche (Synonym: lineare Suche)

(b) Du kannst ein Python-Programm schreiben, das eine lineare Suche nach einem Element e in einer ListeL ausf¨uhrt.

(c) Du kannst die Situationen beschreiben, in denen bei der sequentielle Suche

• der Best Case,

• der Avarage Case,

• der Worst Case

eintritt und die jeweilige Laufzeitkomplexit¨at angeben.

3. Bin¨are Suche

(a) Du kannst das Verfahren (und dessen Voraussetzung) beschreiben und es auf einfachen Listen nachvollziehen.

(b) Du kannst ein Python-Programm schreiben, das die bin¨are Suche nach einem Element e auf einer Liste L implementiert.

(c) Du kannst die Situationen beschreiben, in der bei der bin¨aren Suche der Worst Case eintritt und die zugeh¨orige Laufzeitkomplexit¨at angeben.

(d) Du kannst aus gegebenen Worst Case-Laufzeiten die maximale L¨osungsdauer f¨ur sequentielle und bin¨are Suchprobleme absch¨atzen.

4. Du kannst das String-Matching als Entscheidungs- und als Berechnungsproblem beschreiben.

5. Naives String Matching

(a) Du kannst das naive Verfahren f¨ur das String-Matching-Problem beschreiben und anhand einfacher Beispieldaten tabellarisch dessen Ablauf zeigen sowie die Anzahl der f¨ur die einzelnen Schritte ben¨otigten Vergleiche ermitteln.

(b) Du kannst die Worst Case-Laufzeit des naiven Verfahrens angeben sowie ein Beispiel, in dem diese auftritt.

6. Boyer-Moore-Horspool (BMH)

(a) Du kannst f¨ur eine Textmuster p die Bad-Character-Tabelle bestimmen und die Laufzeitkomplexit¨at daf¨ur angeben.

(b) Du kannst mit Hilfe der Bad-Character-Tabelle den Ablauf des BMH-Algorithmus auf einfachen Beispieldaten zeigen.

(c) Du kannst die Average- und Worst Case-Laufzeit von BMH angeben.

7. String-Matching mit DFAs [noch kein Pr¨ufungsstoff am 27.4.21]

(a) Du kannst aus dem Suchmuster einen deterministischen endlichen Automaten (DFA) konstruieren.

(b) Du kannst die Suche nach einem Musters p in einem Text t mit Hilfe eines DFAs schriftlich nachvollziehen.

Referenzen

ÄHNLICHE DOKUMENTE

• Escape-Sequenzen: Zeilenschaltungen, Tabulatoren, Backslashes, Maskieren von Hoch- kommas oder Anf¨ uhrungszeichen. • Zugriff auf einzelne Zeichen und Teilstrings

Du kannst Dateien zum Lesen oder zum Schreiben ¨ offnen und kennst die Methoden write(), read() und close() f¨ ur Dateiobjekte.. Dar¨ uber hinaus kannst du den Inhalt von

Du kannst mit dem Schl¨ ussel D[<key>] oder mit D.get(<key>) auf den zugeh¨ origen Wert im Dictionary zugreifen4. Du kannst den zu einem Schl¨ ussel geh¨ orenden Wert

Du kannst aus dem Umstand, dass die Elemente von Mengen einfach und ungeordnet auftreten, die n¨ otigen Konsequenzen f¨ ur die Darstellung von Mengen in Python ableiten.. Du bist in

Du kannst das Konzept der Namensr¨ aume auf Python-Programmen anwenden, in- dem du erkennst, welche Variablen, Funktionen und Objekte sich in unterschiedli- chen Namensr¨ aumen

Du weisst, dass jede Kindklasse automatisch die Variablen und Methoden ihrer Elternklasse erbt und dass diese Variablen und Methoden auch ¨ uberschrieben oder durch neue Variablen

Noch einfacher geht es, wenn du statt des Spiegels ein Stück Plexiglas oder Fensterglas verwendest. Dann kannst du hinter der Scheibe die dort sichtbare

Noch einfacher geht es, wenn du statt des Spiegels ein Stück Plexiglas oder Fensterglas verwendest?. Dann kannst du hinter der Scheibe die dort sichtbare Geheimschrift