As I can solve the following problem binary

1 次查看(过去 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 中查找有关 Matrix Indexing 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by