Was ist ein Algorithmus und welche Eingeschaften beschreiben ihn?
Kurz und allgemein:
Ein Algorithmus beschreibt die Methode, mit der eine Aufgabe gelöst wird.
Detaillierter und präziser:
Ein Algorithmus besteht aus einer Folge von Schritten, deren korrekte Abarbeitung die gestellte Aufgabe löst. Die Abarbeitung oder den Vorgang selbst bezeichnet man als Prozeß.
Die folgende Tabelle zeigt ein paar Beispiele von Prozessen mit zugehörigem Algorithmus:
| Prozess | Algorithmus | Typischer Schritt |
|---|---|---|
| Kranich falten | Faltanleitung | Papier entlang einer Linie falten |
| Zimtsterne backen | Rezept | Eier schaumig schlagen |
| Musikstück spielen | Notenblatt | Ein c’ spielen |
Schritt
Wie die einzelnen Schritte eines Algorithmus lauten, hängt stark vom Gebiet ab, für welches der Algorithmus verwendet wird. Die Einzelschritte beim Spielen eines Musikstücks unterscheiden sich stark von den Schritten beim Kochen.
Eine wichtige Eigenschaft von Algorithmen ist die Ausführbarkeit. Sie bedeutet, dass jeder einzelne Schritt eines Algorithmus klar definiert sein muss und ausgeführt werden kann. Da eine klare Definition in Alltagssprache oft umfangreich ist, kommt hier die Fachsprache oder die symbolische Sprache zum Zug.
Spezielle Sprachen
Algorithmen werden oft in einer Fachsprache oder in einer symbolischen Sprache verfasst. Damit lassen sich die einzelnen Schritte eines Algorithmus oft klarer und kürzer ausdrücken als in der Alltagssprache. Beispiele für solche Sprachen sind:
- Die Notenschrift ist eine symbolische Sprache, in welcher die zu spielende Musik kompakt festgehalten werden kann.
- Rezepte sind normalerweise in einer Fachsprache verfasst, welche Fachbegriffe wie «Schnee», «schlagen» oder «glasieren» und Mengenangaben wie «TL» oder «Prise» enthält.
Struktur
Ein Algorithmus definiert, in welcher Reihenfolge die einzelnen Schritte nacheinander abgearbeitet werden. Die Beschreibung dieser Reihenfolge ist die Struktur des Algorithmus. Während die Einzelschritte je nach Anwendungsgebiet unterschiedlich sind, sind die Strukturen (beim Programmieren spricht man von Kontrollstrukturen) von Algorithmen universell.
Wir unterscheiden folgende Strukturen:
- Sequenz
- Es wird ein Schritt nach dem anderen abgearbeitet.
- Wiederholung
- Einer oder mehrere Schritte werden eine bestimmte Anzahl mal wiederholt.
- Bedingte Ausführung
- Ein oder mehrere Schritte werden nur ausgeführt, wenn eine bestimmte Bedingung erfüllt ist.
- Unterprogramm
- Mehrere Schritte können zusammengefasst und mit einem Namen versehen werden. Anstatt immer wieder alle Schritt aufzuführen, wie der nur der Name des Unterprogramms angegeben.
- Parameter
- Das Ergebnis eines Algorithmus oder Unterprogramms kann beeinflusst werden durch Werte, welche bei jeder Ausführung neu festgelegt werden.
Wichtige Eigenschaften
- Eindeutigkeit
- Ein Algorithmus darf keine widersprüchliche Beschreibung enthalten.
- Ausführbarkeit
- Jeder Einzelschritt eines Algorithmus muss ausführbar sein.
- Determiniertheit
- Der Algorithmus muss bei gleichen Voraussetzungen das gleiche Resultat liefern.
- Endlichkeit
- Die Endlichkeit ist eine weitere wichtige Eingenschaft von Algorithmen. Sie bedeutet, dass dessen Beschreibung endlich sein muss. Aber auch die Ausführung muss nach endlich vielen Einzelschritten beendet sein. Ausserdem darf ein Algorithmus nur endlich viel Platz beanspruchen (z.B. Speicherplatz im Computer).
Al-Chwarizmi
Abu Dschaʿfar Muhammad ibn Musa al-Chwārizmī war ein Mathematiker und Universalgelehrter. Er stammte zwar aus dem iranischen Choresmien, verbrachte jedoch den grössten Teil seines Lebens in Bagdad und war dort im «Haus der Weisheit», einer Art Akademie, tätig.
Al-Chwarizmi gilt als einer der bedeutendsten Mathematiker, da er sich mit Algebra als elementarer Untersuchungsform beschäftigte.[1]
In der lateinischen Übersetzung eines Werkes von Al-Chwarizmi wurde sein Name als «Algorismus» geschrieben. Davon leitet sich der heutige Begriff «Algorithmus» ab.[2]

Quelle: Wikipedia: al-Chwarizmi ↩︎
Quelle: Wiktionary: Algorithmus ↩︎