Algorithmus

Ein Algorithmus ist eine Handlungsanweisung (Rezept, Vorgehensweise, Gebrauchsanweisung) in klar definierten Schritten, um ein bestimmtes Problem zu lösen. Konkret eine Reihe festgelegter Anweisungen, die Schritt für Schritt ausgeführt werden und zur Lösung der gestellten Aufgabe führen.

Algorithmen in der digitalen Welt

In der Informatik spielen Algorithmen eine grosse Rolle – als Grundlage der Programmierung und als Teil des Programmcodes, welcher eine Folge von Anweisungen maschinell über den PC ausführt. 

Wie lässt sich ein Algorithmus charakterisieren?

Die charakteristischen Eigenschaften – ein Algorithmus ist:

  • endlich
    Die Anweisung enthält eine endliche Anzahl einzelner Schritte, die ausgeführt werden.
  • terminiert
    Nach endlich vielen Schritten liefert der Algorithmus ein Ergebnis oder bricht als Teil der Anweisung ab, eine Endlosschleife ist ausgeschlossen.
  • eindeutig
    Eine Anweisung muss immer eindeutig (wohldefiniert) sein und darf keine Mehrdeutigkeiten oder Widersprüchlichkeiten enthalten.
  • ausführbar
    Jeder Schritt der Anweisung muss ausführbar sein.
  • determiniert
    Der Algorithmus liefert bei jeder Ausführung mit gleicher Eingabe die gleiche Ausgabe, das heisst, das gleiche Ergebnis.
  • deterministisch
    Nach Abschluss eines Einzelschrittes ist der nächste Schritt (aufgrund der Zwischenergebnisse) als einzige Möglichkeit klar vorgegeben, der Folgeschritt ist eindeutig festgelegt.

Algorithmen in der analogen Welt

Algorithmen finden auch im "ganz normalen" Leben statt. Eine klare Gebrauchsanweisung, logisch konzipiert und Schritt für Schritt aufgebaut, formuliert in natürlicher Sprache, zur Bedienung einer Waschmaschine oder zum Aufbau eines Ikea-Regals, kann ein Algorithmus sein.

Wird die Gebrauchsanweisung vom Anwender Schritt für Schritt abgearbeitet und die Waschmaschine läuft oder das Regal steht? Trifft das zu, dann ist die Gebrauchsanweisung ein Algorithmus, weil die Anleitung den definierten Regeln folgt, die zur Lösung eines Problems führen.