/ Algorithmen & Komplexität

Laufzeit linear O(n)

Operationsanzahl bei linearer Komplexität: Ops = n · k. Jedes Element wird mit konstantem Aufwand k bearbeitet.

Laufzeit linear O(n)
01 · Eingabe

Laufzeit linear O(n) berechnen

Operationsanzahl bei linearer Komplexität: Ops = n · k. Jedes Element wird mit konstantem Aufwand k bearbeitet.

Lösen für
Ops = n · k

Worum geht es?

Eine lineare Laufzeit O(n) liegt vor, wenn die Operationsanzahl proportional zur Eingabegröße n wächst. Das ist der Klassiker einer einfachen Schleife, die jedes Element genau einmal anfasst.

Pro Element fällt ein konstanter Aufwand k an — zum Beispiel ein Vergleich, eine Addition oder ein Funktionsaufruf.

Die Formel

Formel Lineare Laufzeit
Ops = n · k

Umstellungen:
    n = Ops / k
    k = Ops / n

Die Variablen

SymbolBedeutungEinheitErklärung
nEingabegrößeAnzahl Elemente in der Eingabe.
kKonstanteAufwand pro Element (Vergleiche, Adds).
OpsOperationenOpsGesamtanzahl Operationen.

Minimal-Beispiel

Eine Schleife über 10 000 Elemente, pro Element 3 Vergleiche:

Rechnung Operationen
Ops = 10 000 · 3
    = 30 000 Ops

Praxis-Beispiele

Beispiel 1 — Maximum suchen

Lineare Suche nach dem Maximum in einem Array mit n = 1 000 000 Einträgen (k = 1 Vergleich pro Element):

Rechnung Max-Suche
Ops = 1 000 000 · 1
    = 1 000 000 Vergleiche

Beispiel 2 — Konstante k bestimmen

Ein Profiler meldet 4,5 Mio. Operationen für n = 500 000 Elemente:

Rechnung Konstante
k = Ops / n
  = 4 500 000 / 500 000
  = 9 Operationen pro Element

Beispiel 3 — Tragfähige Eingabegröße

Wie viele Elemente n kann ein Algorithmus mit k = 5 in einem Budget von 10⁸ Operationen verarbeiten?

Rechnung Tragfähigkeit
n = Ops / k
  = 10⁸ / 5
  = 20 000 000 Elemente