Skip to main content Link Search Menu Expand Document (external link)

Algorithm-Engineering-Übung für die Veranstaltung Text-Indexierung (WS2020/21)

Diese Seite beinhaltet alle Informationen für die Übung für die Veranstaltung Text-Indexierung. Die Informationen finden Sie auch im Moodle-Raum der Veranstaltung. Bitte beachten Sie, dass sich diese Webseite ausschließlich auf die von mir angebotene Übung bezieht und nicht auf die Vorlesung.

Ablauf der Übung

Die Übungsblätter werden bis spätestens Montag vor der Übung ausgeteilt. (Ausnahme ist das erste Übungsblatt, welches am Dienstag in der ersten Vorlesung ausgeteilt wird). Die Abgabefrist für die Übungsblätter ist immer der daruf folgende Montag bis vor der Übung. (Ausnahme ist auch hier wieder das erste Übungsblatt, welches bis zum Sonntag vor der Übung abgegeben werden muss.) Hier finden Sie häufig gestellte Fragen zur Übung. Wenn Sie noch weitere Fragen haben, wenden Sie sich bitte an florian.kurpicz@tu-dortmund.de.

Übungen

Hier findet sich alles Material zu den Übungen. Bitte beachten Sie, dass es nur dann Videos zu den Übungsblättern gibt, wenn wir nicht alles in der Übung besprechen konnten.

Einführung

Übung 01

Übung 02

Übung 03

Übung 04

Übung 05

Übung 06

Übung 07

Übung 08

Übung 09

Übung 10

Übung 11

Übung 12

Der Programmierwettbewerb

Mit der Abgabe von Programmieraufgaben nehmen Sie auch automatisch an einem (internen) Programmierwettbewerb teil. Hiermit möchten wir besonders gute (schnelle/platzeffiziente) Implementierungen belohnen.

Animiertes Bild vom Pokal

  • Für jede korrekte (Teil)Aufgabe wird die Konstruktionszeit (und falls möglich der Konstruktionsplatz sowie die Anfragezeiten) gemessen und gewertet.
  • Korrekt bedeutet, dass nicht nur der Test durchläuft, sonder auch die Datenstruktur/der Algorithmus, der in der Aufgabe verlangt wurde, implementiert wurde.
  • Die jeweils schnellsten und platzeffizientesten Abgaben erhalten 6 Punkte. Alle darauf folgenden Plätze 4 Punkte (2. Platz) bis 1 Punkt (5. Platz).
  • Bei Gleichstand (unwahrscheinlich) werden sich die Punkte geteilt. Sind zwei Lösungen gleich schnell (1. und 2. Platz) so erhält jede dieser Lösungen 5=(6+4)/2 Punkte.
  • Alle Lösungen, die schneller/speichereffizienter als die Beispiellösung sind erhalten einen Bonuspunkt.
  • Die Gesamtpunktzahl für eine (Teil)Aufgabe ist der Durchschnitt der Punkte für alle Wertungen (Konstruktionszeit, Konstruktionsplatz und Anfragezeit).
  • Der erste Platz erhält am Ende des Semesters einen Pokal (siehe rechts). Mitmachen lohnt sich also!

Informationen zu den Übungsblätter und der Studienleistung

Übungsblätter

Es wird 12 Übungsblätter geben und Sie können auf jedem Übungsblatt bis zu 10 Punkte erreichen.

  • Alle Blätter werden Montags über hier im Moodle veröffentlicht.
  • Sofern nicht anders angegeben liegt die Bearbeitungszeit für Übungsblätter bei einer Woche. Die genaue Frist ist auf den Übungszetteln angegeben.
  • Die Aufgaben werden in der nächsten Übung nach der Abgabe besprochen.
  • Die Übungsaufgaben unterteilen sich in Programmieraufgaben und nicht-Programmieraufgaben.
  • Alle nicht-Programmieraufgaben müssen im Moodle abgegeben werden.
  • Achten Sie darauf, dass Ihre Abgabe gut zu lesen ist.
  • Programmieraufgaben werden über Github-Classrooms abgegeben. Hierzu wird ein Github-Account benötigt.
  • Teilen Sie bitte Florian Kurpicz Ihren Github-Account mit, damit Ihnen die Punkte zugewiesen werden können.
  • Ein Link zu der konkreten Programmieraufgabe ist auf jedem Übungsblatt angegeben.
  • Bei allen Aufgaben sind nur Einzelabgaben zulässig.

Studienleistung

Für die Studienleistung sind die Blätter in drei Blöcke eingeteilt und in jedem Block müssen mindestens 40% der Punkte erreicht werden.

  • Auf den Blättern 1-4 müssen mindestens 16 von 40 Punkten erreicht werden.
  • Auf den Blättern 5-8 müssen mindestens 16 von 40 Punkten erreicht werden.
  • Auf den Blättern 9-12 müssen mindesten 16 von 40 Punkten erreicht werden.