2010-04-07 回答
clear all;
barcodes = {':...:::.:.....::::....:..::.:..:.:..:.:..:..:.::...';':::...:..:...::...::.::.....:.:.:..:..::...:.:..:.:';'::.:...:..:.::..::...:...:::.....::...::.::...:..:.';'::...:.:..:::...:...::..:...:.:..::.:..:..:..::...:';':::....::...:.:...:.:::...:.:..:.:..::...::...:.:..';':.:..:..::...:.:...::::......:::...:.:..:.::..:...:';'::.:..:..:....::..:.:..:.:.:..:..::..:.:.:..:.:..:.';':.::.....:::...:.::.....::..::..:..:.:..:.:..:.:..:';'::...::..:..::...::...::..:...:.:.:.:...:.:.:...::.';'::..:...::...:.:::......:::..:...::..:..:..:.::.:..';'::..:...:.:::...:...:...::.:..:.:..:.:..:.:..:.::..';':.:..::..:.:..:...:.:.:..::.:..:.:..:.:..:..:.:.:..';':..::...:.:..::.::....::....::..:..:..:.:.:.:...:.:';':..::..::.....::::....:..:.:.:.:.:..:..:...::....::'};
n = size(barcodes,1);
m = 5;
a = randperm(n);
r = sort(a(1:m));
r = [r r(1)+n];
r{m} = [];
idx{m} = [];
for k = 1:size(r,2)-1
p = r(k):r(k+1)-1;
p = p+1;
for w = p
if w>n
id = w-n;
else
id = w;
end;
r{k} = [r{k};barcodes{id}];
idx{k} = [idx{k} id];
end;
end;
celldisp(idx); % 分组索引数组
celldisp(r); % 分组结果