As I can solve the following problem binary

7 次查看(过去 30 天)
Yo tengo la siguiente secuencia binaria:
s=[1(1) 1(2) 1(3) 0(4) 1(5) 0(6) 0(7) 0(8) 0(9) 1(10) 1(11) 4(12)];
y quiero que me realice calcule las substrings de longitud n=4 de la siguiente manera:
1(9) 1(10) 1(11) 4(12)
0(6) 0(8) 1(10) 4(12)
1(3) 0(6) 1(9) 4(12)
He de decir que la longitud de las substrings deben poder modificarse, al igual que la longitud de la secuencia.
Muchas gracias
  2 个评论
sixwwwwww
sixwwwwww 2013-10-24
Can you please translate your question in english?
FRANCISCO
FRANCISCO 2013-10-24
sorry,
I have the following binary sequence:
s = [1 (1) 1 (2) 1 (3) 0 (4) 1 (5) 0 (6) 0 (7) 0 (8) 0 (9) 1 (10) 1 (11) 4 (12 )];
and do I want to calculate the substrings of length n = 4 in the following way:
1 (9) 1 (10) 1 (11) 4 (12)
0 (6) 0 (8) 1 (10) 4 (12)
1 (3) 0 (6) 1 (9) 4 (12)
I must say that the length of the substrings must be changeable, like the length of the sequence.
thank you very much

请先登录,再进行评论。

采纳的回答

sixwwwwww
sixwwwwww 2013-10-24
Dear FRANCISCO, here is the code which performs the desired function:
s = 1:100; % Your array
n = 11; % Length of sub-arrays
a = fliplr(s);
combinations = floor(length(s) / n);
b = zeros(combinations, n);
for k = 1:combinations
b(k, 1) = a(1);
l = 1;
for j = 1:n - 1
l = l + k;
b(k, j+1) = a(l);
end
end
Matrix_combinations = fliplr(b);
disp(Matrix_combinations) % Final matrix of sub-arrays
I hope it helps. Good luck!

更多回答(1 个)

Andrei Bobrov
Andrei Bobrov 2013-10-31
n = 4;
idxend = 12;
idx = idxend + bsxfun(@times,1-n:0,(1:n-1)');

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by