COMBINATOR -combinations AND permutations

Versione 1.3.0.0 (32,7 KB) da Matt Fig
Returns 1 of 4 different samplings on the set 1:N, taken K at a time.
11,3K download
Aggiornato 9 set 2010

Visualizza la licenza

COMBINATOR will return one of 4 different samplings on the set 1:N, taken K at a time. These samplings are given as follows:

PERMUTATIONS WITH REPETITION/REPLACEMENT
COMBINATOR(N,K,'p','r') -- N >= 1, K >= 0

PERMUTATIONS WITHOUT REPETITION/REPLACEMENT
COMBINATOR(N,K,'p') -- N >= 1, N >= K >= 0

COMBINATIONS WITH REPETITION/REPLACEMENT
COMBINATOR(N,K,'c','r') -- N >= 1, K >= 0

COMBINATIONS WITHOUT REPETITION/REPLACEMENT
COMBINATOR(N,K,'c') -- N >= 1, N >= K >= 0

Example:

combinator(4,2,'p','r') % Permutations with repetition
combinator(4,2,'p') % Permutations without repetition
combinator(4,2,'c','r') % Combinations with repetition
combinator(4,2,'c') % Combinations without repetition
ans =
1 1
1 2
1 3
1 4
2 1
2 2
2 3
2 4
3 1
3 2
3 3
3 4
4 1
4 2
4 3
4 4
ans =
1 2
1 3
1 4
2 1
2 3
2 4
3 1
3 2
3 4
4 1
4 2
4 3
ans =
1 1
1 2
1 3
1 4
2 2
2 3
2 4
3 3
3 4
4 4
ans =
1 2
1 3
1 4
2 3
2 4
3 4

The accompanying c++ file can be MEXed to provide the ability to specify N as an int8, int16, or int32. This saves memory and is faster. I have provided a MEX file that was created on Win XP with 2006a that may work. If not, the file will need to be MEXed on your machine.
Please READ the help before using.
I would very much appreciate bug reports sent through email, as well as suggestions for improvement. Thanks.

Cita come

Matt Fig (2024). COMBINATOR -combinations AND permutations (https://www.mathworks.com/matlabcentral/fileexchange/24325-combinator-combinations-and-permutations), MATLAB Central File Exchange. Recuperato .

Compatibilità della release di MATLAB
Creato con R2007a
Compatibile con qualsiasi release
Compatibilità della piattaforma
Windows macOS Linux
Categorie
Scopri di più su Elementary Math in Help Center e MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Versione Pubblicato Note della release
1.3.0.0

Previous update had left out the C++ source code.

1.2.0.0

Implemented changes suggested by Jan Simon.

1.1.0.0

Added ability to specify integer class for N. MEX-File.

1.0.0.0