Generating combination of binary numbers

2 visualizaciones (últimos 30 días)
Luqman Saleem
Luqman Saleem el 18 de Dic. de 2019
Comentada: Luqman Saleem el 18 de Dic. de 2019
Variable N and M are some integers and . I want to create permutation of M 1s and 0s in the order shown below. Let and
A = [1 1 0 0 0;
1 0 1 0 0;
1 0 0 1 0;
1 0 0 0 1;
0 1 1 0 0;
0 1 0 1 0;
0 1 0 0 1;
0 0 1 1 0;
0 0 1 0 1;
0 0 0 1 1];
Note that in first row all 1s are on right side, then in next row the right most 1 move one step toward right and so on...

Respuesta aceptada

Guillaume
Guillaume el 18 de Dic. de 2019
nchoosek outputs the indices in your desired ordering, so it's easy:
N = 5, M = 2; %demo data
cols = nchoosek(1:N, M);
A = zeros(size(cols, 1), N);
A(sub2ind(size(A), repmat((1:size(A, 1))', 1, M), cols)) = 1
  1 comentario
Luqman Saleem
Luqman Saleem el 18 de Dic. de 2019
Wow! That was very quick. Slute!
I am so noob in programming.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Get Started with MATLAB en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by