Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
faecher:informatik:oberstufe:adt:verkettete_liste:benchmarking:start [01.07.2021 12:15] – [Implementationsvarianten] sbel | faecher:informatik:oberstufe:adt:verkettete_liste:benchmarking:start [Unbekanntes Datum] (aktuell) – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Benchmarking verschiedener Listenimplementationen ====== | ||
- | Ein Beispiel für ein ADT ist die [[..: | ||
- | |||
- | Die Namen der Operationen und ihre Signatur (also Parameter und Rückgabewert) können in Java durch eine **abstrakte Oberklasse** oder ein **Interface** festgelegt werden – dies ist die **// | ||
- | |||
- | Allerdings sagen die Methoden und ihre Signaturen nichts über das **// | ||
- | |||
- | Ein Programmierer, | ||
- | |||
- | ---- | ||
- | {{: | ||
- | === (A1) === | ||
- | Beschreibe das Verhalten der folgenden Methoden im Kontext einer verketteten Liste so eindeutig wie möglich. Was genau sollen diese Methoden machen, was geben Sie zurück, welche Voraussetzungen müssen evtl. erfüllt sein, damit man sie auf die verkettete Liste anwenden kann? | ||
- | |||
- | - '' | ||
- | - '' | ||
- | - '' | ||
- | - '' | ||
- | |||
- | ==== Implementationsvarianten ==== | ||
- | |||
- | Eine Eigenschaft abstrakter Datentypen (ADTs) ist, dass sie keine Angaben über ihren inneren Aufbau machen, sondern nach außen nur ihre Methoden anbieten und deren Verhalten definieren. | ||
- | |||
- | Eine Liste kann man auf verschiedenste Weisen implementieren, | ||
- | |||
- | Im Repository https:// | ||
- | |||
- | Die Benchmark-Klasse führt einige Tests mit den verschiedenen Listenvarianten durch und untersucht, wie viel Speicher und wie viel Zeit die Tests benötigen. | ||
- | |||
- | ---- | ||
- | {{: | ||
- | === (A2) === | ||
- | |||
- | Checke das Repo aus und übersetze den Code in beiden Verzeichnissen. Übersetze auch die Klassen im Unterordner " | ||
- | |||
- | {{ : | ||
- | |||
- | ---- | ||
- | {{: | ||
- | === (A3) === | ||
- | |||
- | Untersuche den Code der Listen-Klassen(n). | ||
- | |||
- | * Wo werden die Fähigkeiten der Liste - unabhängig von der konkreten Implementation - definiert? | ||
- | * Warum ist die Klasse '' | ||
- | * Warum spielt das keine Rolle für einen Programmierer, |