22.04.2014 Aufrufe

Kurze Einführung in die Informatik

Kurze Einführung in die Informatik

Kurze Einführung in die Informatik

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

4 Wie bestimmt man <strong>die</strong> Laufzeit e<strong>in</strong>es Algorithmus?<br />

E<strong>in</strong> Algorithmus besteht aus e<strong>in</strong>zelnen Anweisungen. Diese Anweisungen werden e<strong>in</strong>mal<br />

oder mehrmals ausgeführt. Wie oft sie ausgeführt werden, ist abhängig von der der E<strong>in</strong>gabe.<br />

Hat man e<strong>in</strong>en speziellen Rechner im Auge, kann man <strong>in</strong> se<strong>in</strong>en technischen Daten<br />

nachlesen, wie lange se<strong>in</strong> Prozessor für e<strong>in</strong>e Anweisung braucht. Dann muss man also<br />

nur alle im Falle der Ausführung des Algorithmus ausgeführten Anweisungen zählen und<br />

multipliziert sie mit der Zeit, <strong>die</strong> e<strong>in</strong>e Anweisung dauert.<br />

Bemerkung: Es wird angenommen, dass jede Anweisung konstante Rechenzeit braucht.<br />

Wie entscheiden wir, was e<strong>in</strong> effizienter und was e<strong>in</strong> <strong>in</strong>effizienter Algorithmus ist?<br />

Im täglichen Leben haben wir über <strong>die</strong> Jahre e<strong>in</strong> Gefühl entwickelt, welche Geldanlage<br />

wir von den folgenden auswählen würden:<br />

Geld Geld Geld<br />

t t t<br />

Abbildung 1: Entwicklung von Geldanlagen.<br />

Bei Geldanlagen vergeht <strong>die</strong> Zeit und wichtig ist für uns das Geld, das sich vermehrt.<br />

Deshalb ist <strong>die</strong> Zeit <strong>die</strong> E<strong>in</strong>gabe und das Geld <strong>die</strong> Ausgabe der Geldentwicklungsfunktion.<br />

Bei Algorithmen ist <strong>die</strong> Zeit <strong>die</strong> Größe, <strong>die</strong> uns als Ergebnis <strong>in</strong>teressiert und <strong>die</strong> E<strong>in</strong>gabe<br />

s<strong>in</strong>d positive ganze Zahlen, z.B. Anzahl der zu ordnenden Bücher, Anzahl der Waren im<br />

Kaufhaus, Anzahl von Städten, Größe des Zahlenschlüssels bei e<strong>in</strong>er Verschlüsselung, ...<br />

Von welchen Algorithmen der folgenden würden wir <strong>die</strong> F<strong>in</strong>ger lassen, da sie irrs<strong>in</strong>nig<br />

lange rechnen?<br />

Das l<strong>in</strong>ke Bild zeigt <strong>die</strong> Laufzeit e<strong>in</strong>es <strong>in</strong>effizienten Algorithmus und das ganz rechte<br />

Bild <strong>die</strong> vernünftige Laufzeit e<strong>in</strong>es effizienten Algorithmus. Bei drei Algorithmen, <strong>die</strong><br />

D<strong>in</strong>ge sortieren sollen, hätte man beispielsweise folgende Laufzeiten <strong>in</strong> Abhängigkeit von<br />

der Anzahl der zu sortierenden D<strong>in</strong>ge (z.B. Bücher oder Namen):<br />

8

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!