Difference between revisions of "Java - Datenstrukturen"
Line 24: | Line 24: | ||
soll NICHT die eingebaute Sortierfunktion des Listen Interface, sondern euer eigener Algorithmus verwendet werden. | soll NICHT die eingebaute Sortierfunktion des Listen Interface, sondern euer eigener Algorithmus verwendet werden. | ||
====Entwurfsmuster==== | ====Entwurfsmuster / Design Patterns==== | ||
Weitere Informationen zu Entwurfsmustern findet ihr hier: | Weitere Informationen zu Entwurfsmustern findet ihr hier: | ||
https://refactoring.guru/design-patterns | https://refactoring.guru/design-patterns | ||
https://sourcemaking.com/design_patterns | https://sourcemaking.com/design_patterns |
Revision as of 11:38, 30 March 2022
Tag 1
Datenstrukturen
Aufgabe: Mengenlehre
Gegeben sind drei Zahlenmengen A, B, C - realisiert als Arrays vom Typ Integer:
A = { 49, 30, 14, 47, 13, 2, 12, 29, 19, 11, 15, 39, 43, 45, 34 } B = { 39, 33, 38, 14, 4, 32, 40, 25, 17, 46, 35, 6, 2, 12, 49 } C = { 41, 12, 5, 35, 42, 28, 47, 20, 26, 24, 50, 40, 14, 17, 10 }
Berechne möglichst effizient die Vereinigungsmenge von A ∪ B ∪ C sowie alle möglichen Schnittmengen und Differenzmengen der drei Zahlenmengen. Du kannst davon ausgehen, dass alle Mengen gleich groß sind. Gestalte deine Methoden mit dem fluent-interface Entwurfsmuster (Design Patterns: https://java-design-patterns.com/patterns/fluentinterface/). Das heißt, dass alle Methoden zur Berechnung dieser Verknüpfungen den selben return Typ haben sollen wie die Parameter.
getUnionList(a, getIntersectionList(b,c)); // das sollte funktionieren und heißt A ∪ (B ∩ C)
Verwende zum lösen dieser Aufgabe das Interface Set und die Implementation HashSet diese stehen in Java bereits zur Verfügung. Auch für das Bilden der verschiedenen Mengen solltest du Methoden des Interfaces verwenden.
Aufgabe: Wörterbuch
Erstelle ein Programm welches ein Wörterbuch zum Übersetzen von Wörtern zwischen Englisch und Deutsch implementiert (bi-direktional). Es soll folgende
Funktionalitäten umfassen: - Hinzufügen eines neuen Wort-Paars (Englisch und Deutsch) - Entfernen eines Wort-Paars aus dem Wörterbuch
Um diese Aufgabe zu lösen ist das Map Interface gut geeignet.
Aufgabe: Liste sortieren
Wähle einen der bereits mit Arrays implementierten Sortieralgorithmus und ändere die Implementation derart, dass statt Arrays Listen verwendet werden. Wichtig: Es soll NICHT die eingebaute Sortierfunktion des Listen Interface, sondern euer eigener Algorithmus verwendet werden.
Entwurfsmuster / Design Patterns
Weitere Informationen zu Entwurfsmustern findet ihr hier: https://refactoring.guru/design-patterns https://sourcemaking.com/design_patterns