• Keine Ergebnisse gefunden

Aufgabe 3: Komplexit¨at (2 Punkte)

N/A
N/A
Protected

Academic year: 2021

Aktie "Aufgabe 3: Komplexit¨at (2 Punkte)"

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Grundlagen der Informatik f¨ur IM, SS2020 http://knopper.net/bw/gdi/

Ubung 8 ¨

Algorithmen in JAVA, Rekursive Funktionen (Methoden), Komplexit¨atsklassen

Aufgabe 1: Fakult¨at (1 Punkt)

Schreiben Sie eine Java-Funktion, welchen!f¨ur eine als Parameter ¨ubergebene Zahlnberech- net und zur¨uckgibt. Verwenden Sie diesmal zur Berechnung keine Schleife, sondern Rekursion!

Hinweis: Die Funktion sollte als staticdeklariert werden. Die Eingabezahl k¨onnen Sie in main(...)von der Konsole einlesen und das Ergebnis dort auch ausgeben lassen.

Aufgabe 2: Multiplikation mal anders (1 Punkt)

In ¨Ubung 4 haben wir anhand eines Flussdiagramms gezeigt, dass die Multiplikation zweier Zahlen auch ohne Multiplikationsoperator m¨oglich ist, in einer iterativen Variante. Schreiben Sie das gleiche Programm nun in JAVA, diesmal aber alsrekursive Funktion!

Aufgabe 3: Komplexit¨at (2 Punkte)

Bestimmen Sie die Komplexit¨atsklassen der folgenden Funktionen in O-Notation.

1. 12.5∗n5−2.5∗n3−n2

2. −2∗n3+ 0.001∗n4+ 100−10512∗n+n4∗log 2n 3. 5∗n2∗logn2n+4∗n

Aufgabe 4: Komplexit¨at (2 Punkte)

Ein Rechner kann pro Sekunde106Operationen durchf¨uhren. Berechnen Sie wie lange es dau- ern w¨urde die folgenden Probleme mit diesem Computer zu l¨osen:

1. Bubble-Sort:Um ein Array zu sortieren (1, 2, 3 ...) kann man auf den sog. Bubble-Sort zur¨uckgreifen. Dieser hat im durchschnittlichen Fall eine Komplexit¨at von O(n2). Es soll nun eine Array mit 275.000 (zweihundertf¨unfundsiebzigtausend) Elementen sortiert werden. Wie lange ben¨otigt der Rechner hierf¨ur?

1

(2)

2. Die T ¨urme von Hanoi:Das Spiel besteht aus drei gleich großen St¨abenA,BundC, auf die mehrere gelochte Scheiben gelegt werden, alle verschieden groß. Zu Beginn liegen alle Scheiben auf Stab A, der Gr¨oße nach geordnet, mit der gr¨oßten Scheibe unten und der kleinsten oben. Ziel des Spiels ist es, den kompletten Scheiben-Stapel vonAnachC zu versetzen.

Bei jedem Zug darf die oberste Scheibe eines beliebigen Stabes auf einen der beiden anderen St¨abe gelegt werden, vorausgesetzt, dort liegt nicht schon eine kleinere Scheibe.

Folglich sind zu jedem Zeitpunkt des Spieles die Scheiben auf jedem Feld der Gr¨oße nach geordnet.

Auf StapelAliegen nun 64 Scheiben. Wie lange ben¨otigt ihr Computer, um den Stapel mit dem in der Vorlesung genannten Algorithmus zu versetzen?

Tipp: Sie m¨ussen zun¨achst die Komplexit¨atsklasse des Spiels ermitteln, die sicherlich gr¨oßer alsO(n)sein wird, um die Anzahl der Spielz¨uge zu ermitteln!

2

Referenzen

ÄHNLICHE DOKUMENTE

Dabei sind jedoch folgende Regeln zu beachten: Es darf immer nur eine Scheibe zu einem Zeitpunkt bewegt werden und es darf nie eine gr¨oßere auf eine kleinere Scheibe gelegt

Eine Scheibe A (der Masse m), die mit der Geschwindigkeit v ¨ uber eine glatte horizon- tale Fl¨ ache gleitet, erf¨ ahrt an einem Punkt 0 einen elastischen Zusammenstoß mit

Wie groß ist der innere Durchmesser des ¨ außeren Leiters eines luftgef¨ ullten Koaxialkabels, dessen zentral gelegener Leiter ein zylindrisches Kabel mit dem Durchmesser d = 1mm

ØBÚ$×Gð$ÕBäâ$ÕB×GÝÚ$ìeåÕBä'ðIáÝß6Ú$× ëDÚÔeÕIè ׃ÝÞeß6åfØ áIåÕmáIà6à†ßQëNáIâ$ÕBåß6× áI×

Das ist nun nicht nur eine Erinnerung an eine großartige Position, sondern es ist der Hinweis auf ein Problem: Platon ist großartig nicht einfach durch seine Ideenleh- re und die

 Eine Scheibe darf entweder auf leeren Stab oder auf eine größere Scheibe gesetzt werden, nicht auf kleinere Scheibe. Towers of

Beachten Sie bitte das aktualisierte Merkblatt zu Modulen und Modulprüfungen

Geberharmonisierung als Herausforderung Doch trotz guter Gründe für den Einsatz politischer Kondi- tionalität ist längst nicht gesichert, dass Konditionalität auch effektiv im