Difference between revisions of "Java - Datenstrukturen"

From Coders.Bay Wiki
Jump to navigation Jump to search
Line 3: Line 3:
====Aufgabe: Mengenlehre====
====Aufgabe: Mengenlehre====
Gegeben sind drei Zahlenmengen A, B, C - realisiert als Arrays vom Typ Integer:
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 }
  A = { 1, 3, 5 }
  B = { 39, 33, 38, 14, 4, 32, 40, 25, 17, 46, 35, 6, 2, 12, 49 }
  B = { 3, 5, 7 }
  C = { 41, 12, 5, 35, 42, 28, 47, 20, 26, 24, 50, 40, 14, 17, 10 }
  C = { 5, 7, 9 }


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.  
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.  

Revision as of 09:28, 4 October 2022

Tag 1

Datenstrukturen

Aufgabe: Mengenlehre

Gegeben sind drei Zahlenmengen A, B, C - realisiert als Arrays vom Typ Integer:

A = { 1, 3, 5 }
B = { 3, 5, 7 }
C = { 5, 7, 9 }

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.

Verwende dazu die bereits vorhandene Klasse "HashMap" und deren Methoden.

Gestalte deine Methoden so, dass sie zur Berechnung der Ergebnismenge den selben return Typ haben wie die Parameter. Dadurch können die Methodenaufrufe beliebig oft geschachtelt werden.

z.B.: getUnionList(a, getIntersectionList(b,c)); // das sollte funktionieren und heißt A ∪ (B ∩ C)

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