Teil III: Evaluationstest

Ähnliche Dokumente
Teil IV: Erprobungsbericht

Teil II: Unterrichtssequenz

Elementare Sortierverfahren

Übung Datenstrukturen. Sortieren

Klausur in Programmieren

(08 - Einfache Sortierverfahren)

Übung Algorithmen und Datenstrukturen

Aufgabe (Schreibtischtest, lexikographische Ordnung)

Sortierverfahren. Sortierverfahren für eindimensionale Arrays

2.3.1 Einleitung Einfache Sortierverfahren Höhere Sortierverfahren Komplexität von Sortierverfahren Spezielle Sortierverfahren

Tutoraufgabe 1 (Hoare-Kalkül):

Folge 13 - Quicksort

UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1. Übung 9. Sortieren

Sortieralgorithmen OOPM, Ralf Lämmel

Schleifen in C/C++/Java

Übung zu Algorithmen und Datenstrukturen (für ET/IT)

Einfache Sortierverfahren in Java, 2. Version

Klausur in Programmieren

7. Sortieren Lernziele. 7. Sortieren

Aufgabenblatt: Arrays

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen

Suchen und Sortieren

Einfache Sortierverfahren in Java, 1. Version

Proseminar String Matching

Interne Sortierverfahren

WS2017/ Oktober 2017

Übungsblatt 7. Thema: Sortieren, Objektorientierung

Kapitel 10. Komplexität von Algorithmen und Sortieralgorithmen

Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems

Grundlegende Sortieralgorithmen

Grundlegende Sortieralgorithmen

Grundlegende Sortieralgorithmen

Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems

Bitte füllen Sie den untenstehenden Abschnitt nicht aus

Kurs 1661 Datenstrukturen I Klausur am Seite 1. Hinweise zur Bearbeitung der Klausur zum Kurs 1661 Datenstrukturen I

Klausur "C#" WS 2013/2014

Informatik II Sortieren

Informatik II Sortieren

Klausur in Programmieren

Probeklausur zur Vorlesung

Tutoraufgabe 1 (Sortieren): Lösung: Datenstrukturen und Algorithmen SS14 Lösung - Übung 4

Organisatorisches. Neue Übungsblätter: Nur mehr elektronisch? Abgabe Di, , 14 Uhr bis Do, , 8Uhr

Klausur "C#" WS 2012/2013

Computergrundkenntnisse und Programmieren, WS 07/08, Übung 11: Klassen der Standardbibliothek 2

Übung Algorithmen und Datenstrukturen

PK-Einstufungstest. 1. Allgemeine Multiple-Choice-Aufgaben. Aufgabe 1.1. Alle Aufgaben beziehen sich auf Java.

Übung Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen

f 1 (n) = log(n) + n 2 n 5 f 2 (n) = n 3 + n 2 f 3 (n) = log(n 2 ) f 4 (n) = n n f 5 (n) = (log(n)) 2

Prüfung Informatik D-MATH/D-PHYS :00 11:00

Übung: Algorithmen und Datenstrukturen SS 2007

Schiller-Gymnasium Hof

Algorithmen und Datenstrukturen Wintersemester 2004/ November T(n) = T(n a) + T(a) + n

Die for -Schleife HEUTE. Schleifen. Arrays. Schleifen in JAVA. while, do reichen aus, um alle iterativen Algorithmen zu beschreiben

Einführung in die Programmierung für NF. Arrays

Vom Leichtesten zum Schwersten Sortieralgorithmen

WS2018/ Oktober 2018

Ziele. Kapitel 10: Komplexität von Algorithmen und Sortierverfahren. Beispiel: Lineare Suche eines Elements in einem Array (1)

Aufgabe (Schreibtischtest, Algorithmenanalyse)

Effiziente Algorithmen 2

Präsenzübung Datenstrukturen und Algorithmen SS 2014

Vor- und Nachbedingungen in imperativen Programmen OOPM, Ralf Lämmel

Algorithmen und Datenstrukturen. Kapitel 3: Sortierverfahren. Skript zur Vorlesung. Algorithmen und Datenstrukturen

Organisatorisches. drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50

Name:... Matr.-Nr... Bearbeitungszeit: 120 Minuten. Lesen Sie die Aufgaben jeweils bis zum Ende durch; oft gibt es hilfreiche Hinweise!

Algorithmische Bioinformatik 1

Aufgabenblatt 2 Suchen und Sortieren. Aufgabe 1: Vergleiche und Sortieren in Java

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen

Arrays. Arrays werden verwendet, wenn viele Variablen benötigt werden. Der Vorteil in Arrays liegt darin, dass man nur eine Variable deklarieren muss

Suchen und Sortieren OOPM, Ralf Lämmel

BUBBLE SORT. Können wir die gefundenen Algorithmen auch auf Listen mit mehr als drei Elementen ausdehnen?

Reihungen. Prof. Dr. Christian Böhm. In Zusammenarbeit mit Gefei Zhang. WS 07/08

Klausur Algorithmen und Datenstrukturen I SS 03

Kompaktkurs Einführung in die Programmierung Übungsblatt 5: Funktionen

JAVA - Suchen - Sortieren

Schleifen in C/C++/Java

Übung Algorithmen I

2.2 Der Algorithmus von Knuth, Morris und Pratt

Übung zu Algorithmen und Datenstrukturen (für ET/IT)

Vorlesung Datenstrukturen

Programmieren in C/C++: Klausur 2 ( )

Übersicht. Datenstrukturen und Algorithmen. Divide-and-Conquer. Übersicht. Vorlesung 9: Quicksort (K7)

Reihungen. Martin Wirsing. in Zusammenarbeit mit Michael Barth, Fabian Birzele und Gefei Zhang

Übung zu Algorithmen und Datenstrukturen (für ET/IT)

damit hätten wir nach Ende der Schleife: "a[0 n-1] enthält nur Elemente aus a[0 n-1], aber in sortierter Reihenfolge".

Informatik II Musterlösung

Programmieren I. Kapitel 7. Sortieren und Suchen

8.6 Visualisierung der Sortieralgorithmen

Programmieren in C. Strukturen und Zeiger. Prof. Dr. Nikolaus Wulff

Algorithms & Data Structures 2

Bitte beachten Sie, dass diese Aufgaben keinerlei Beschränkung des zu prüfenden Stoffes noch sonstige Rückschlüsse auf die Klausur begründen.

Android will doch nur spielen. Java Vertiefung und Übung

PK-Einstufungstest. 1. Allgemeine Multiple-Choice-Aufgaben

Klausur - Informatik I SS 05. Note: Bearbeitungszeit 120 Minuten Keine Hilfsmittel

Informatik B Sommersemester Musterlösung zur Klausur vom

Algorithmen und Datenstrukturen

PK-Einstufungstest. 1. Allgemeine Multiple-Choice-Aufgaben. Alle Aufgaben beziehen sich auf Java.

Transkript:

Teil III: Evaluationstest Inhalt 1 Evaluationstest Teil 1: Fachwissen (inkl. Musterlösung)... 2 1.1 Rahmenbedingungen und Aufgaben... 2 1.2 Lösungsvorschläge zu den Aufgaben... 3 1.3 Verteilung der Punkte... 5 2 Evaluationstest Teil 2: Umfrage... 6 3 Evaluationstest Teil 3: Selbstreflexion... 7 teil3_evaluationstests.doc Seite 1

1 Evaluationstest Teil 1: Fachwissen (inkl. Musterlösung) 1.1 Rahmenbedingungen und Aufgaben Zeit: 45 Minuten Hilfsmittel : Unterlagen der Unterrichtssequenz (ohne Lösungen); kein Computer! Punkte: Jede Aufgabe gibt 5 Punkte Bewertung: Note = (Anzahl Punkte)/4+1 Aufgabe (1) Wie kann man Wörter alphabetisch sortieren? Formulieren Sie in natürlicher Sprache einen Algorithmus zur Bestimmung des kleineren von zwei Wörtern. Hinweise: Sie können sich auf Wörter beschränken, die aus den Buchstaben 'a' bis 'z' bestehen. Es gibt also keine Umlaute, keine Leer- und Sonderzeichen, keine Ziffern und auch keine Grossbuchstaben. Beachten Sie, dass die Wörter verschieden lang sein können. Berücksichtigen Sie auch den Fall, dass die beiden Wörter gleich sind. Folgende Funktionen dürfen Sie als gegeben annehmen: - Bestimmung der Länge eines Wortes - Vergleich zweier Zeichen (kleiner, grösser, gleich) Aufgabe (2) Entwickeln Sie eine Variante von BubbleSort, bei der nicht die grossen Elemente in Richtung Array-Ende transportiert werden, sondern die kleinen in Richtung Array-Anfang. Sie können selbst wählen, ob Sie den ursprünglichen oder den optimierten Algorithmus nehmen wollen. Schreiben Sie die Lösung in C#-ähnlicher Syntax auf. Aufgabe (3) Entwickeln Sie eine Funktion, welche einen Array nach dem SelectionSort-Verfahren absteigend sortiert. Geben Sie die Lösung in C#-ähnlicher Syntax an. Aufgabe (4) Führen Sie von Hand die Partitionierung des folgenden Arrays aus. Verwenden Sie dazu den in den Unterlagen besprochenen Algorithmus. Notieren und kommentieren Sie jeden Schritt. 6 7 5 8 3 3 9 1, Pivot = 7 teil3_evaluationstests.doc Seite 2

1.2 Lösungsvorschläge zu den Aufgaben Aufgabe (1) Schritt Was tun (1) Setze einen Zähler i auf den Wert 1. (2) Wenn beide Wörter r als i Buchstaben haben, sind sie gleich, und wir sind fertig. (3) Wenn nur eines der Wörter r als i Buchstaben hat, ist dieses das kleinere, und wir sind fertig. (4) Beide Wörter haben also mindestens i Buchstaben. Vergleiche nun die i-ten Buchstaben der beiden Wörter. Wenn sie ungleich sind, dann ist dasjenige Wort mit dem kleineren i-ten Buchstaben das kleinere Wort, und wir sind fertig. (5) Erhöhe i um 1 und gehe zu (2). Aufgabe (2) void bubblesort2(int[] a) { int n = a.length; bool etwasvertauscht; do { etwasvertauscht = false; for (int k = n - 2; k >= 0; k--) { if (istgroesser(a[k],a[k + 1])) { vertauschen(a, k, k + 1); etwasvertauscht = true; while (etwasvertauscht); Aufgabe (3) void selectionsortabsteigend(int[] a) { int n = a.length; for (int i = 1; i < n; i++) { int minindex = 0; // Index des bisher kleinsten Elements for (int k = 1; k <= n - i; k++) { if (istgroesser(a[minindex], a[k])) { minindex = k; vertauschen(a, minindex, n - i); teil3_evaluationstests.doc Seite 3

Aufgabe (4) Schritt Was tun k Ergebnis dieses Schrittes Ausgangslage 6 7 5 8 3 3 9 1 (2.1) Bringe Pivot an letzte Stelle 6 1 5 8 3 3 9 7 (2.2) Setze Einfügeposition k auf 1 1 6 1 5 8 3 3 9 7 (2.3) Wähle erstes Element 1 6 1 5 8 3 3 9 7 Pos. 1 (nichts tun) und dann k um 1 erhöhen 2 6 1 5 8 3 3 9 7 (2.5) Wähle nächstes Element 2 6 1 5 8 3 3 9 7 Pos. 2 (nichts tun) und dann k um 1 erhöhen 3 6 1 5 8 3 3 9 7 (2.5) Wähle nächstes Element 3 6 1 5 8 3 3 9 7 Pos. 3 (nichts tun) und dann k um 1 erhöhen 4 6 1 5 8 3 3 9 7 (2.5) Wähle nächstes Element 4 6 1 5 8 3 3 9 7 (2.4) Gewähltes Element ist nicht kleiner als Pivot, also nichts tun 4 6 1 5 8 3 3 9 7 (2.5) Wähle nächstes Element 6 1 5 8 3 3 9 7 Pos. 4 und dann k um 1 erhöhen 5 6 1 5 8 3 3 9 7 (2.5) Wähle nächstes Element 5 6 1 5 3 8 3 9 7 Pos. 5 und dann k um 1 erhöhen 6 6 1 5 3 8 3 9 7 (2.5) Wähle nächstes Element 6 6 1 5 3 3 8 9 7 (2.4) Gewähltes Element ist nicht kleiner als Pivot, also nichts tun 6 6 1 5 3 3 8 9 7 (2.5) Es gibt kein weiteres Element mehr 6 6 1 5 3 3 8 9 7 (2.6) Bringe Pivot an Position 6 6 6 1 5 3 3 7 9 8 Fertig 6 1 5 3 3 7 9 8 teil3_evaluationstests.doc Seite 4

1.3 Verteilung der Punkte Aufgabe (1) - Lösung als Algorithmus formuliert: 1 Punkt - Algorithmus korrekt für ungleiche Wörter mit gleicher Länge: 2 Punkte - unterschiedlicher Wortlängen berücksichtigt: 1 Punkt - Gleichheit von Wörtern berücksichtigt: 1 Punkt Aufgabe (2) - äussere Schleife (alle Durchgänge): 1 Punkt - innere Schleife (ein Durchgang): 1 Punkt - Vergleich und Vertauschung: 1 Punkt - kleine Elemente nach links, nicht grosse nach rechts transportieren: 2 Punkte Aufgabe (3) - äussere Schleife (alle Durchgänge): 1 Punkt - innere Schleife (ein Durchgang): 1 Punkt - Vergleich und Vertauschung: 1 Punkt - absteigende Sortierung: 2 Punkte Aufgabe (4) Pivot aus dem Weg schaffen: Vertauschung der kleineren Elemente an die en Positionen: Pivot an die endgültige Position bringen : Kommentar zu den einzelnen Schritten: 1 Punkt 2 Punkte 1 Punkt 1 Punkt teil3_evaluationstests.doc Seite 5

2 Evaluationstest Teil 2: Umfrage Bitte bewerten Sie die Unterrichtssequenz zum Thema Sortierverfahren nach ihrem persönlichen Empfinden: Text Verständlichkeit völlig unverständlich schlecht verständlich geht so gut verständllich sehr gut verständlich Ausführlichkeit knapp knapp ausführlich ausführlich Anzahl Beispiele viele viele Geschichte von Mistkäfer Willi völlig überflüssig eher unnötig geht so nützlich das beste von allem Übungsaufgaben Anzahl viele viele Schwierigkeitsgrad einfach einfach schwierig schwierig Beitrag zum Verständnis keiner wenig geht so hilfreich sehr hilfreich Zusatzaufgaben Wie viele Zusatzaufgaben haben Sie gelöst? Falls Sie mindestens eine Zusatzaufgabe gelöst haben: Haben Ihnen die Zusatzaufgaben zu einem tieferen Verständnis verholfen? 0 1 2 3 4 oder mehr überhaupt nicht kaum ja, ein bisschen ja ja, sehr Verschiedenes Zur Verfügung stehende Zeit wenig wenig viel viel Wie viele der Lernziele haben Sie Ihrer Meinung nach erreicht? keines etwa ein Viertel etwa die Hälfte etwa drei Viertel alle Platz für Kommentare und Verbesserungsvorschläge teil3_evaluationstests.doc Seite 6

3 Evaluationstest Teil 3: Selbstreflexion Bitte tragen Sie Ihr Ergebnis aus dem Evaluationstest Teil 1 (Fachwissen) ein: Maximale Punktzahl: 20 Erreichte Punktzahl: Differenz (= Punktverlust): Was sind Ihrer Meinung nach die Gründe für ihre Punktverluste? Ordnen Sie die verlorenen Punkte den folgenden Erklärungen zu: Zu wenig Zeit für die Bearbeitung des Stoffs: Zu wenig Zeit für den Test: Aufgaben entsprachen nicht den Lernzielen: Aufgaben nicht verstanden: Aufgaben nicht genau gelesen: Andere Gründe: teil3_evaluationstests.doc Seite 7