28.03.2014 Aufrufe

Informatik 1 - Mitschriften von Klaas Ole Kürtz

Informatik 1 - Mitschriften von Klaas Ole Kürtz

Informatik 1 - Mitschriften von Klaas Ole Kürtz

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

2.5.2 Größenordnungen<br />

• wichtig: Vergleich <strong>von</strong> Resourcen-Verbrauch (Zeit, Speicherbedarf)<br />

• gemessen in Abhängigkeit <strong>von</strong> einem Parameter n (Genauigkeit bei<br />

Wurzel, n-te Zahl bei Fibonacci, Größe der Matrix etc.)<br />

• R(n): Betrag der Resourcen des Prozesses, um Problem der Größe n zu<br />

lösen<br />

• exakt schwer meßbar (abhängig <strong>von</strong> Implementierung)<br />

⇒ R(n) hat Größenordnung O(f(n)), falls es Konstanten c und n 0 gibt<br />

(unabhängig <strong>von</strong> n) mit R(n) ≦ c · f(n) für alle n ≧ n 0 .<br />

• Beispiele:<br />

– Linearer rekursiver Fakultätsprozeß: Zeit O(n), Speicher O(n)<br />

– Iterative Version: Zeit O(n), Speicher O(1) (konstant!)<br />

– Baumrekursion bei Fibonacci: Zeit O(φ n ), Speicher O(n)<br />

• etwas vereinfacht, z.B. die Multiplikation hat laut Annahme konstanten<br />

Aufwand, teilweise ist dies aber tatsächlich abhängig <strong>von</strong> der Zahlengröße,<br />

gibt aber grobes Maß für die Effizienz <strong>von</strong> Algorithmen<br />

• Prozesse mit exponentieller Laufzeit O(c n ) in der Praxis unbrauchbar,<br />

für manche Probleme gibt es aber offenbar keine effizienteren Algorithmen;<br />

Hilfsmittel/Work-Around: Heuristiken<br />

2.5.3 Beispiele für effiziente Algorithmen<br />

Beispiel Potenzrechnung (Eingabe b und n, Ausgabe b n ):<br />

• Unmittelbare Lösung: rekursive Definition<br />

(define (pot b n) (if (= n 0) 1 (* b (pot b )- n 1)))<br />

Zeit und Speicher: O(n)<br />

• iterative Version:<br />

(define (pot b n)<br />

(define (pot-iter z p)<br />

(if (= z 0) p<br />

(pot-iter (- z 1) (* p b))))<br />

(pot-iter n 1))<br />

14

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!