Generieren Sie alle Partitionen einer Liste
Die neuen Funktionen FoldPair und FoldPairList ermöglichen die gleichzeitige Anwendung einer Output-Funktion und einer Zustandsaktualisierungsfunktion.
Partitionieren Sie eine Liste der Länge 5.
In[1]:=
list = {a, b, c, d, e};
Verwenden Sie FoldPairList gemeinsam mit TakeDrop, um eine Partition der folgenden Längen zu erzeugen.
In[2]:=
lengths = {2, 2, 1};
FoldPairList[TakeDrop, list, lengths]
Out[2]=
Um alle Partitionen zu konstruieren, ermitteln Sie alle möglichen Zerlegungen der Zahl 5.
In[3]:=
lengthsAll = Flatten[Permutations /@ IntegerPartitions[5], 1]
Out[3]=
In[4]:=
FoldPairList[TakeDrop, list, #] & /@ lengthsAll // Column
Out[4]=