4. Übungsblatt - Institut für Programmierung und Reaktive Systeme
4. Übungsblatt - Institut für Programmierung und Reaktive Systeme
4. Übungsblatt - Institut für Programmierung und Reaktive Systeme
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Technische Universität Braunschweig<br />
<strong>Institut</strong> <strong>für</strong> <strong>Programmierung</strong> <strong>und</strong> <strong>Reaktive</strong> <strong>Systeme</strong><br />
Dr. Werner Struckmann/Hendrik Freytag<br />
19. September 2013<br />
Vorkurs „Konzepte der Informatik“<br />
<strong>4.</strong> <strong>Übungsblatt</strong><br />
Aufgabe 10: Finden Sie sich in Gruppen mit 3, 6 oder 9 Leuten zusammen, <strong>und</strong> lassen Sie<br />
die folgenden drei Sortieralgorithmen gegeneinander antreten: Selection-Sort, Tournament-<br />
Sort <strong>und</strong> Counting-Sort. Ersteren mit 10 Elementen, Tournament mit 16 <strong>und</strong> letzteren mit<br />
20.<br />
a) Überlegen Sie sich zuerst, welcher Algorithmus theoretisch gewinnen müsste, welcher<br />
also die geforderte Anzahl Elemente mit den wenigsten Schritten sortiert.<br />
b) Testen Sie Ihre Annahme in der Praxis, indem jeder seinen Algorithmus ausführt.<br />
Achten Sie darauf, dass die Schritte so abgearbeitet werden, wie es auch ein Computer<br />
machen müsste.<br />
Aufgabe 11: In dieser Aufgabe sollen Sie bestimmte Eigenschaften der Sortieralgorithmen<br />
herausarbeiten, indem Sie zwei Algorithmen in bestimmten Situationen vergleichen.<br />
a) Wie verändert sich die Anzahl der Operationen von „Selection-Sort“ bzw. „Bubblesort“,<br />
wenn man eine überwiegend vorsortierte Liste sortiert, z.B. [2, 7, 8, 12, 28, 12,<br />
16, 19, 25, 28]?<br />
b) Vergleichen Sie „Tournament-Sort“ <strong>und</strong> „Counting-Sort“, indem Sie die Anzahl der<br />
Rechenschritte <strong>und</strong> die Anzahl der benötigten Speicherzellen gegenüberstellen.<br />
Rucksackprobleme<br />
Aufgabe 12: Entnehmen Sie dem Material die leere Kiste der Größe 11 <strong>und</strong> einige<br />
„Goldstücke“; dieses ist der kleinste Schatz.<br />
a) Füllen Sie die Kiste optimal mit diesen Gegenständen.<br />
b) Verallgemeinern Sie Ihr Verfahren, sodass Sie eine beliebige Kiste der Größe n mit<br />
Schätzen einer Sorte, wobei die Größe des Schatzes s <strong>und</strong> der Wert w sei, optimal<br />
füllen können.<br />
c) Notieren Sie Ihr Verfahren als Struktogramm.<br />
d) Ist Ihr Verfahren ein Algorithmus? Begründen Sie Ihre Antwort.
Aufgabe 13:<br />
Wiederum gilt es, die Kiste der Größe 11 zu füllen.<br />
a) Jetzt haben Sie „Goldstücke“ <strong>und</strong> zusätzlich „Geldscheine“ zur Auswahl. Füllen Sie<br />
die Kiste erneut optimal.<br />
b) Verallgemeinern Sie Ihr Verfahren, sodass Sie eine Schatzkiste der Größe n optimal<br />
mit zwei Sorten Schätze s <strong>und</strong> t füllen können. Beginnen Sie Ihre Überlegungen mit<br />
einer Kiste der Größe n <strong>und</strong> den beiden Schätzen aus Teilaufgabe (a).<br />
c) Notieren Sie Ihr Verfahren als Struktogramm.<br />
d) Ist Ihr Verfahren ein Algorithmus? Begründen Sie Ihre Antwort.<br />
Aufgabe 14:<br />
Wiederum gilt es, die Kiste der Größe 11 zu füllen.<br />
a) Jetzt haben Sie „Goldstücke“ <strong>und</strong> „Geldscheine“ <strong>und</strong> zusätzlich die „Zauberringe“<br />
zur Auswahl. Füllen Sie die Kiste erneut optimal.<br />
b) Verallgemeinern Sie Ihr Verfahren, sodass Sie eine Schatzkiste der Größe n optimal<br />
mit drei Sorten Schätze s, t <strong>und</strong> u füllen können. Beginnen Sie Ihre Überlegungen<br />
mit einer Kiste der Größe n <strong>und</strong> den drei Schätzen aus Teilaufgabe (a).<br />
c) Notieren Sie Ihr Verfahren als Struktogramm.<br />
d) Ist Ihr Verfahren ein Algorithmus? Begründen Sie Ihre Antwort.<br />
– 2 –