faecher:informatik:oberstufe:adt:set:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
faecher:informatik:oberstufe:adt:set:start [01.11.2021 09:37] – [Erarbeitung] Mareike Nutzfaecher:informatik:oberstufe:adt:set:start [Unbekanntes Datum] (aktuell) – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1
Zeile 1: Zeile 1:
-====== Der ADT "Set" (Menge) ====== 
  
-===== Definition: Set ===== 
-Der abstrakte Datentyp Set repräsentiert im mathematischen Sinne eine Menge. Eine Menge hat folgende Eigenschaften: 
-  * Eine Menge kann beliebig viele Elemente enthalten. 
-  * Jedes Element kann höchstens einmal vorhanden sein. 
-  * Es kommt nicht auf die Reihenfolge der Elemente an. 
- 
-Und folgende Methoden: 
-  * Konstruktor ''Set()'' – erzeugt eine leere Menge 
-  * ''einfuegen(wert: int)'' – fügt den Wert wert in die Menge ein, falls er noch nicht vorhanden ist 
-  * ''entfernen(wert: int)'' – entfernt den Wert wert aus der Menge, falls er vorhanden ist; andernfalls wird die Menge nicht verändert. 
-  * ''enthaelt(wert: int): boolean'' – gibt ''true'' zurück, wenn ''wert'' in der Menge enthalten ist, sonst ''false''. 
-  * ''anzahl(): int'' – gibt die Anzahl der Elemente in der Menge zurück 
-  * ''istLeer(): boolean'' – gibt ''true'' zurück, wenn die Menge leer ist, sonst ''false''. 
-  * ''schnittmenge(s: Set): Set'' – gibt eine Menge zurück, die genau die Elemente enthält, die in dieser Menge und in ''s'' enthalten sind. 
-  * ''vereinigungsmenge(s: Set): Set'' – gibt eine Menge zurück, die genau die Element enthält, die in dieser Menge oder in ''s'' oder in beiden enthalten sind. 
-  * ''differenz(s: Set): Set'' – gibt eine Menge zurück, die genau die Elemente enthält, die in dieser Menge, aber nicht in ''s'' enthalten sind. 
-  * ''untermenge(s: Set): boolean'' – gibt ''true'' zurück, wenn jedes Element dieser Menge in ''s'' enthalten ist 
-  * ''gleich(s: Set): boolean'' – gibt ''true'' zurück, wenn diese Menge und ''s'' die gleichen Elemente enthält; sonst ''false''. 
- 
- 
-===== Erarbeitung ===== 
-Arbeite mit der Vorlage von **LINK** und bearbeite nachfolgende Aufgaben. 
- 
-----  
-{{:aufgabe.png?nolink  |}} 
-=== (A1) Funktionalität der Versionen === 
-Im BlueJ-Package sind zwei verschiedene Versionen. Der Quellcode ist nicht einsehbar. Finde heraus, ob beide Versionen die gleiche Funktionalität aufweisen. Erstelle dazu Beispielobjekte. 
- 
-----  
-{{:aufgabe.png?nolink  |}} 
-=== (A2) Operationen mit Mengen === 
-Wähle nun eine der beiden Varianten und nutze sie für diese Aufgabe. 
-  * Erstelle ein Set M = {} und ein Set N = {}. Finde heraus was die Methoden ''schnittmenge(s)'', ''vereinigungsmenge(s)'', ''differenz(s)'' und ''untermenge(s)'' machen. Beschreibe die Funktionalität für das gegebene Beispiel sowie den allgemeinen Fall (schriftlich). 
-  * Vergleiche die Operationen des ADT Sets mit anderen Datenstrukturen (Liste, Array, ...).  
-++++ Tipp | 
-Was passiert bei ''einfuegen(wert)''? 
-++++ 
-  * Ist die Reihenfolge der eingefügten Elemente relevant? 
-++++ Tipp | 
-Was passiert bei ''gleich(s)''? 
-++++ 
-  * Wende ''untermenge(s)'' auf zwei gleiche Mengen an. Was passiert? 
- 
-----  
-{{:aufgabe.png?nolink  |}} 
-=== (A3) Verschiedene Varianten schneiden === 
-  * Erstelle je ein Set beider Varianten. Schneide diese beiden Sets miteinander. Beschreibe was passiert. Was passiert, wenn du sie anders herum schneidest? 
-++++ Tipp | 
-In welcher Variante liegt das Ergebnis vor? 
-++++ 
-  * Warum ist das so? Begründe deine Beobachtung. 
-++++ Tipp | 
-Abstraktion 
-++++ 
- 
-{{simplefilelist>:faecher:informatik:oberstufe:adt:set:*}} 
  • faecher/informatik/oberstufe/adt/set/start.1635755852.txt.gz
  • Zuletzt geändert: 01.11.2021 09:37
  • von Mareike Nutz