DEV Community

Cover image for Kanban Projekt / Algorithmus: Muster suchen
Computer vonmir
Computer vonmir

Posted on

Kanban Projekt / Algorithmus: Muster suchen

Mein erstes Kanban-Projekt: Muster-Suchalgorithmus
Ich habe mein erstes Kanban-Projekt abgeschlossen! Dabei ging es darum, einen Algorithmus zu erstellen, der ein Muster in einem Text suchen kann.

Zum Beispiel könnte man damit in Logs nach Wörtern wie „ERROR" suchen.

Was macht der Algorithmus?
Du gibst einen Text und ein Muster ein.
Der Algorithmus sucht das Muster im Text.
Wenn er es findet, gibt er den Index (die Position) aus.
Wenn er es nicht findet, sagt er: „Muster nicht gefunden".

Schritte des Algorithmus:
Eingabe:
Du gibst den Text und das Muster ein.
Prüfen:
Der Algorithmus schaut, ob Text oder Muster leer sind. Wenn ja, bricht er ab.
Suchen:
Der Algorithmus durchläuft den Text und vergleicht Abschnitt für Abschnitt mit dem Muster.
Übereinstimmung:
Wenn das Muster gefunden wird, wird der Index ausgegeben, und die Suche endet.
Kein Treffer:
Wenn nichts gefunden wird, wird ausgegeben: „Muster nicht gefunden".

Beispiele:
Text: "ERROR: Invalid function arguments"
Muster: "ERROR"
Ausgabe: „Muster gefunden bei Index 0".
Text: "ERROR: Invalid function arguments"
Muster: "Hallo"
Ausgabe: „Muster nicht gefunden".

FLUSSDIAGRAMM

(https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8hc83wc5oqcxknlzjj7u.png)

Psuedocode:
 
Print "ERROR: Invalid function arguments"
INPUT text
PRINT "ERROR
INPUT pattern
Eingabevalidierung
IF text == OR pattern == Then Print "Fehler: EIngaben dürfen nicht leer sein."
STOP
End If
Text durchsuchen
FOR i FROM 0 TO LENGTH(text) - LENGT (pattern) DO
// vergleiche Textabschnitte mit Muster substring - text [i +i LENGTH(pattern)]
If substring == pattern THEN
PRINT "Muster gefunden bei index",

STOP
END IF
END FOR
// Kein Treffer
PRINT "Muster nicht gefunden."
END
Fazit:
Es war spannend, den Algorithmus Schritt für Schritt zu erstellen. Auch wenn ich mir nicht sicher bin, ob alles perfekt ist, habe ich viel dabei gelernt und mein Bestes gegeben. 😊

Vielen Dank fürs Lesen! 
Ich freue mich auf eure Kommentare und Anregungen
SPACETOWER

Top comments (0)