FB18 - Das Forum für Informatik

fb18.de / Diplom Informatik / Unterbereich Grundstudium / Praktische Informatik

P2/P3: ADT

P2/P3: ADT 2004-02-20 11:48
Anonymer User
Hallo!

bei den ADTen gibt's ja die Typen, Funktionen, Axiome und Vorbedingungen:

Leider verstehe ich die funktionale Schreibweise nicht:

insert bei einer Menge:

insert: SET[T] -> T -> SET[T]
delete: SET[T] /-> T -> SET[T]

Wer kann mir das mal kurz, bündig und verständlich erklären!?

Vielen Dank!!!

Marco

Re: P2/P3: ADT 2004-02-20 14:04
Anonymer User
insert: SET[T] -> T -> SET[T]

Eine Menge und ein Element als Argument ein SET[T] als Rueckgabe. Ich faende eigentlich set[T] x T -> SET[T] schoener (zumal ja in den Bedingungen dann auch sowas steht wie insert(S,t) o.ae. mit S : SET[T], t : T). Zurueck erhaelst du bei insert(S,t) gerade die Menge S vereinigt mit {t}

delete: SET[T] /-> T -> SET[T]

Entfernt das Element aus der Menge, liefert eine Menge zurueck. Nur partiell, weil die Menge (die als Argument dient) nicht leer sein darf. Dies muesste in den Bedingungen spezifiziert werden.

Cheers.

Re: P2/P3: ADT 2004-02-20 14:28
UncleOwen
delete: SET[T] /-> T -> SET[T]

Entfernt das Element aus der Menge, liefert eine Menge zurueck.

Ist die Rueckgabe nicht die (um ein Element kleinere) Menge und das entfernte Element?

Re: P2/P3: ADT 2004-02-20 21:53
Anonymer User
Ist die Rueckgabe nicht die (um ein Element kleinere) Menge und das entfernte Element?

Nein. Wie sollte das gehen? Sollte etwa ein beliebiges Element entfernt werden? Man muss angeben welches Element man aus der Menge entfernen moechte.

(Dies ist ja keine Queue oder aehnliches, wo immer klar ist welches Element entfernt werden soll, sondern eine Menge!)

Cheers.

Re: P2/P3: ADT 2004-02-20 21:54
UncleOwen
Nein. Wie sollte das gehen? Sollte etwa ein beliebiges Element entfernt werden?

Aeh, ja. Wer lesen kann ist klar im Vorteil. Stack != Set. Danke.