API for clojure.math.combinatorics
Full namespace name: clojure.math.combinatorics
Efficient, functional algorithms for generating lazy
sequences for common combinatorial functions. (See the source code
for a longer description.)
Public Variables and Functions
Usage: (cartesian-product & seqs)
All the ways to take one item from each sequence
Usage: (combinations items n)
All the unique ways of taking n different elements from items
Usage: (lex-permutations c)
DEPRECATED as a public function.
In prior versions of the combinatorics library, there were two similar functions: permutations and lex-permutations. It was a source of confusion to know which to call. Now, you can always call permutations. When appropriate (i.e., when you pass in a sorted sequence of numbers), permutations will automatically call lex-permutations as a speed optimization.
Deprecated since Lazy sequences for common combinatorial functions version 1.3
Usage: (partitions items & args)
All the lexicographic distinct partitions of items.
Optionally pass in :min and/or :max to specify inclusive bounds on the number of parts the items can be split into.
Usage: (permutations items)
All the distinct permutations of items, lexicographic by index.
Usage: (selections items n)
All the ways of taking n (possibly the same) elements from the sequence of items
Usage: (subsets items)
All the subsets of items