combo


combo, a Python code which ranks, unranks, enumerates, lists and randomly selects balanced sequences, cycles, graphs, Gray codes, subsets, partitions, permutations, restricted growth functions, Pruefer codes and trees.

The objects include:

Some of these sets of objects can be ordered in several different ways, and in some cases, a separate set of ranking, unranking, and successor routines are available for the various orderings (lexical, colexical, revolving door, Trotter-Johnson).

Kreher and Stinson provide C source-code for the routines, as well as other information, at their web site.

Licensing:

The information on this web page is distributed under the MIT license.

Languages:

combo is available in a C version and a C++ version and a Fortran77 version and a Fortran90 version and a MATLAB version and an Octave version and a Python version.

Related Data and Programs:

monomial, a Python code which enumerates, lists, ranks, unranks and randomizes multivariate monomials in a space of m dimensions, with total degree less than n, equal to n, or lying within a given range.

polynomial, a Python code which adds, multiplies, differentiates, evaluates and prints multivariate polynomials in a space of m dimensions.

python_combinatorics, a Python code which considers a variety of problems in combinatorics involving counting, combinations, permutations, and so on.

subset, a Python code which generates, ranks and unranks various combinatorial objects.

unicycle, a Python code which considers permutations containing a single cycle, sometimes called cyclic permutations.

Source Code:


Last revised on 28 September 2021. <%-- John Burkardt -->