Wolfram言語

コアとなる言語

リストの全分割を生成する

新関数のFoldPairFoldPairListを使うと,出力関数と状態更新関数に同時にマッピングを行うことができる.

長さ5のリストを分割する.

In[1]:=
Click for copyable input
list = {a, b, c, d, e};

FoldPairListTakeDropと一緒に使って次の長さに分割する.

In[2]:=
Click for copyable input
lengths = {2, 2, 1}; FoldPairList[TakeDrop, list, lengths]
Out[2]=

あらゆる方法で分割するために,5という数の可能なすべての分解を求める.

In[3]:=
Click for copyable input
lengthsAll = Flatten[Permutations /@ IntegerPartitions[5], 1]
Out[3]=
In[4]:=
Click for copyable input
FoldPairList[TakeDrop, list, #] & /@ lengthsAll // Column
Out[4]=

関連する例

de en es fr ko pt-br ru zh