Wolfram Language

Lenguaje de núcleo

Genere todas las particiones de una lista

Las nuevas funciones FoldPair y FoldPairList permiten mapear simultáneamente una función de salida y una función de actualización de estado.

Tome una lista de longitud 5 para ser dividida.

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

Utilice FoldPairList junto con TakeDrop para generar una partición de las siguientes longitudes.

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

Para construir todas las particiones, encuentre todas las posibles descomposiciones del número 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]=

Ejemplos relacionados

de en fr ja ko pt-br ru zh