Partitionen-Algorithmus < Mathematica < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 15:57 Di 10.07.2007 | Autor: | juerci |
Aufgabe | Schreiben Sie eine Funkion in Mathematica, die eine Liste aller Partitionen einer Zahl n berechnet. |
Mein Problem besteht darin, dass ich keine guten Algorithmus habe. Meine erste Idee war einen rekursiven Algorithmus zu finden ...
Komme dabei überhaupt nicht weiter. Im Internet habe ich dazu auch noch nichts passendes gefunden! Das Programmieren geht dann schon, suche also nur einen geeigneten Algorithmus!!
Eine Problem wird dann bei einer größerer Zahl n natürlich auch er Speicher, denn für die Zahl 20 gibt es schon 51724158235372 verschiedene Partitionen!
MFG Jürgen
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 19:04 Di 10.07.2007 | Autor: | dormant |
Hi!
Ich glaub viel sinvoller wäre ein Algorithmus der die Anzahl verschiedener Partitionen von einer Zahl n berechnet. Eine Liste ausgeben ist nicht sehr sinnvoll. Aber egal. Unter "integer partition algorithm" findet man im Google einiges. Hier ist ein ausführlicher Algorithmus zu finden.
> Eine Problem wird dann bei einer größerer Zahl n natürlich
> auch er Speicher, denn für die Zahl 20 gibt es schon
> 51724158235372 verschiedene Partitionen!
Laut Internet gibt es für 20 nur 627 verschiedene Partitionen. Meinst du mit der Partition von einer positiven ganzen Zahl n eine Möglichkeit n als Summe von ganzen positiven Zahlen kleiner als n zu schreiben?
Gruß,
dormant
|
|
|
|