Wolfram: List. Combinatorics
Permutations
Permutations
-
Permutations[list]
→ all possible permutationsPermutations[list,n]
→ up to n elementsPermutations[list,{n}]
→ exactly n elements
Permutations[{a,b,c}] (* {{a, b, c}, {a, c, b}, {b, a, c}, {b, c, a}, {c, a, b}, {c, b, a}} *) (* HHHH------------------------------ *) (* up to n elements *) Permutations[{a,b,c},2] (* {{}, {a}, {b}, {c}, {a, b}, {a, c}, {b, a}, {b, c}, {c, a}, {c, b}} *) (* HHHH------------------------------ *) (* exactly n elements *) Permutations[{a,b,c},{2}] (* {{a, b}, {a, c}, {b, a}, {b, c}, {c, a}, {c, b}} *)
Tuples
Tuples[ list, n]
-
return all possible n-tuples.
Tuples[ {1,2,3}, 2] (* {{1, 1}, {1, 2}, {1, 3}, {2, 1}, {2, 2}, {2, 3}, {3, 1}, {3, 2}, {3, 3}} *) Tuples[ {a,b}, 3] (* {{a, a, a}, {a, a, b}, {a, b, a}, {a, b, b}, {b, a, a}, {b, a, b}, {b, b, a}, {b, b, b}} *)
Tuples[ {list1, list2, etc}]
-
Return all possible n-tuples. First element from list1, second element from list2, etc. aka Cartesian Product.
Tuples[{{1,2,3}, {a,b}}] (* {{1, a}, {1, b}, {2, a}, {2, b}, {3, a}, {3, b}} *)
Tuples[ list, {n1,n2,etc}]
-
Return all possible array with dimension {n1,n2,etc} using elements in list1.
Tuples[{a,b}, {2,2}] (* { {{a, a}, {a, a}}, {{a, a}, {a, b}}, {{a, a}, {b, a}}, {{a, a}, {b, b}}, {{a, b}, {a, a}}, {{a, b}, {a, b}}, {{a, b}, {b, a}}, {{a, b}, {b, b}}, {{b, a}, {a, a}}, {{b, a}, {a, b}}, {{b, a}, {b, a}}, {{b, a}, {b, b}}, {{b, b}, {a, a}}, {{b, b}, {a, b}}, {{b, b}, {b, a}}, {{b, b}, {b, b}} } *)
Subsets
Subsets
-
Subsets[list]
→ all subsets.Subsets[list, n]
→ max subset length n.Subsets[list, {n}]
→ subset length exactly n.Subsets[list, {n, m}]
→ subset length n to m.Subsets[list, spec, s]
→ first s subsets.
list elements are treated as distinct
Subsets[{1,2,3}] (* {{}, {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3}} *) (* list elements are treated as distinct *) Subsets[{2,2,2}] (* {{}, {2}, {2}, {2}, {2, 2}, {2, 2}, {2, 2}, {2, 2, 2}} *) (* HHHH------------------------------ *) (* max length n in each subset. *) Subsets[{1,2,3}, 2] (* {{}, {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}} *) (* HHHH------------------------------ *) (* exact length n in each subset. *) Subsets[{1,2,3}, {2}] (* {{1, 2}, {1, 3}, {2, 3}} *) (* HHHH------------------------------ *) (* length n to m in each subset. *) Subsets[{1,2,3}, {2,3}] (* {{1, 2}, {1, 3}, {2, 3}, {1, 2, 3}} *) (* HHHH------------------------------ *) (* just first 4 subsets. *) Subsets[{1,2,3}, 2, 5] (* {{}, {1}, {2}, {3}, {1, 2}} *)
Subsequences
Subsequences
-
Subsequences[list]
→ all subsequencesSubsequences[list,n]
→ subsequences containing at most n elements.Subsequences[list,{n}]
→ subsequences of exactly n elements.Subsequences[list,{nmin,nmax}]
→ subsequences between nmin and nmax elements.Subsequences[list,nspec,s]
→ first s result.Subsequences[list,nspec,{s}]
→ gives if possible the s ^(th) subsequence.
Subsequences[{1,2,3}] (* {{}, {1}, {2}, {3}, {1, 2}, {2, 3}, {1, 2, 3}} *) (* limit to max of length 2 ones *) Subsequences[{1,2,3},2] (* {{}, {1}, {2}, {3}, {1, 2}, {2, 3}} *) (* exactly length 2 ones *) Subsequences[{1,2,3}, {2}] (* {{1, 2}, {2, 3}} *) (* length 1 to 2 *) Subsequences[{1,2,3}, {1,2}] (* {{1}, {2}, {3}, {1, 2}, {2, 3}} *) (* just first 4 items *) Subsequences[{1,2,3}, {1,2}, 4] (* {{1}, {2}, {3}, {1, 2}} *)
Groupings
Groupings
-
xtodo
Groupings[3, 2] (* {{{1, 2}, 3}, {1, {2, 3}}} *) Groupings[{1,2,3},2] (* {{{1, 2}, 3}, {1, {2, 3}}} *) Groupings[{{1,2,3}, {a,b,c}}, 2] (* {{{1, 2}, 3}, {{a, b}, c}, {1, {2, 3}}, {a, {b, c}}} *) Groupings[{1,2,3}, 2] (* {{{1, 2}, 3}, {1, {2, 3}}} *) Groupings[{a,b,c}, 2] (* {{{a, b}, c}, {a, {b, c}}} *)
Wolfram. List Operations
- Wolfram: List Operations
- Wolfram: List. Create (Table)
- Wolfram: Create Flat List (Range)
- Wolfram: List. Get Parts
- Wolfram: List. Add Element
- Wolfram: List. Delete Element
- Wolfram: List. Change Element
- Wolfram: List. Check Exist
- Wolfram: List. Filter
- Wolfram: List. Sort Reverse Order
- Wolfram: List. Reshape (split, group, flatten, transpose)
- Wolfram: List. Count, Group, Similar Items
- Wolfram: List. Combinatorics
- Wolfram: List. Join, Union, Intersection, Difference