Komplexität von Algorithmen

Ein wichtiges Merkmal von Algorithmen ist die Komplexität. Dabei ist entscheidend, wie viel Zeit bzw. auch wie viel Speicherplatz ein Algorithmus zur Ausführung benötigt. Das Ziel bei der Entwicklung von Algorithmen besteht darin, möglichst effiziente Algorithmen zu entwerfen. Effizienz von Algorithmen zeichnet sich durch geringe Ausführungszeit und geringen Speicherplatzverbrauch aus.

Einflußfaktoren auf die Komplexität eines Algorithmus sind zunächst die Anzahl und die Größe der Eingabedaten. Diesen Einflußfaktor bezeichnet man als Problemgröße.

Die Art und Zusammensetzung der Ablaufstrukturen eines Algorithmus spielen in Bezug auf Verbrauch an Rechenzeit ebenfalls eine wesentliche Rolle.

Zum Beispiel wird ein Algorithmus mit einer for-Schleife schneller ausgeführt, als ein Algorithmus mit mehreren for-Schleifen.

Neben der theoretischen Komplexität eines Algorithmus sollte man in der wirklichen Welt, also in der Praxis, auch Leistung und Art der Rechenanlage berücksichtigen.

Beachte:

Ein Leistungsstarker Prozessor führt zu einer schnellen

Ausführung. Die Komplexität des Algorithmus selber ändert sich jedoch nicht mit der Leistung des Prozessors. Die Komplexität soll nur die Schwierigkeit des zugrunde liegenden Problems wiederspiegeln.