Übungsblatt 05

Werbung
Übungen zur Vorlesung
Informatik für Informationsmanager II
Universität
Koblenz-Landau
Institut für Informatik
Prof. Dr. Steffen Staab
Dr. Manfred Jackel
SS 2006
Übungsblatt 05
Abzugeben bis12.06.2006, 10.00 Uhr
Aufgabe 1
Im Aufgabenblatt 4 aus dem WS 05/06 wurde Darstellung einer ganzen Zahl als
Dualzahl berechnet (binaer.java). Zeigen Sie, dass der Aufwand zur Berechnung der
relevanten Dualziffern einer ganzen Zahl n den asymptotischen Aufwand O(log(n))
besitzt. „Relevant“ heißt hier: ohne führende Nullen.
Aufgabe 2
In einem Feld der Länge 16 seien die ersten 16 Primzahlen von 2 bis 53 aufsteigend
sortiert gespeichert. In diesem Feld soll linear und binär gesucht werden. Wir wollen
ermitteln, wie viele Vergleiche bei beiden Suchverfahren notwendig sind. Die
Algorithmen haben Sie in der Vorlesung kennen gelernt, entsprechenden Code
können Sie den Folien entnehmen.
a) 4 Werte sollen Sie durch Überlegen herausfinden: wie viele Vergleiche sind
notwendig, um die Zahl 2 und die Zahl 50 in dem Feld zu suchen, je einmal
linear und je einmal binär? Begründen Sie Ihre Antwort.
b) Die Summe der Vergleiche für das Suchen aller Zahlen zwischen 1 und 50
sollen Sie per Simulation ermitteln. Implementieren Sie dazu Methoden, die
das lineare und das binäre Suchen simulieren und dabei die Anzahl der
Vergleiche zählen. Den Code aus der Vorlesung brauchen Sie dazu nur relativ
geringfügig zu ändern und zu ergänzen.
In der vorgegebenen Klasse Uebung52.java ist das Feld prim mit den
Primzahlen bereits vorgegeben, ebenso die leeren Methoden-Rümpfe
getCountLinear und getCountBinary. Diese sollen so ausprogrammiert
werden, dass Sie die Anzahl der Aufrufe von compareTo als Ergebnis
zurückliefern.
Geben Sie die ergänzte, lauffähige Datei uebung52.java ab.
Abzugeben bis Mo, 12.6.2006, 10.00h durch Einsendung an [email protected]
oder [email protected] .
Herunterladen