www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Englisch
  Status Grammatik
  Status Lektüre
  Status Korrekturlesen
  Status Übersetzung
  Status Sonstiges (Englisch)

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Diskrete Mathematik" - Mengenpartitionen
Mengenpartitionen < Diskrete Mathematik < Hochschule < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Diskrete Mathematik"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Mengenpartitionen: Algorithmus
Status: (Frage) beantwortet Status 
Datum: 17:02 Sa 10.05.2008
Autor: cofriga

Aufgabe
berechnung aller mengenpartitionen
beispiel:
für (1234): (1234),(123)(4),(124)(3),(134)(2),(234)(1),(12)(34),(1)(2)(34),(1)(3)(24),
(1)(4)(23),....,(3)(4)(12),(1)(2)(3)(4)

hallo ich suche einen algorithmus, um wie in der aufgabe beschrieben, alle partitionen zu finden.

Wenn ich zu einer Menge einen Array gleicher Länge erzeuge, und dann binär durchzähle, was einer Partition entspricht, klappt es nicht ganz:

0000=(1234)
0001=(123)(4)
0010=(12)(3)(4)
0011=(12)(34)
0100=(1)(2)(34)
0101=(1)(2)(3)(4)
0110=(1)(23)(4)
0111=(1)(234)

soweit so gut. jedoch fehlen einige Partitionen:
(1)(3)(24) zb
würde ich weiter zählen, kämen zu viele Lösungen:
1000=(1)(234)=0111

ich habe versucht, in gewissen fällen dieses binäre zählen mit k-teilmengen zu verknüpfen, jedoch kämen da auch zu viele lösungen heraus.

gibt es irgendwelche tipps?
vielen dank im voraus!

Ich habe diese Frage auch in folgenden Foren auf anderen Internetseiten gestellt:
http://www.c-plusplus.de/forum/viewtopic-var-t-is-212791.html

        
Bezug
Mengenpartitionen: Antwort
Status: (Antwort) fertig Status 
Datum: 19:26 Sa 10.05.2008
Autor: koepper

Hallo,

alle Mengenpartitionen einer Menge A bekommst du am einfachsten rekursiv. Sei $a [mm] \in [/mm] A$ und $B := A [mm] \setminus \{a\}$. [/mm]
Betrachte alle Mengenpartitionen von B. Zu jeder Mengenpartition MPB von B bekommst du Mengenpartitionen von A, indem du nacheinander zu jeder Teilmenge in MPB das Element a hinzufügst und außerdem das Element a einmal als separate Teilmenge hinzufügst.
Die Programmierung erfolgt auf genau diese Weise rekursiv.

LG
Will

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Diskrete Mathematik"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.englischraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]