作者okgogogo (低调≧﹏≦)
看板MATLAB
标题Re: [问题] 以组来组合排序的方法
时间Wed Nov 23 00:36:03 2011
clc
clear all
a=[1 0 0 0 0];
b=[0 1 0 0 0];
c=[0 0 1 0 0];
d=[0 0 0 1 0];
e=[0 0 0 0 1];
p={a b c d e};
p=fliplr(p(fullfact([5 5 5 5])));
for i=1:length(p)
A{i,1} =[p{i,:}];
end
%验证
A{1} %1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0
A{2} %1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0
A{625} %0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
※ 引述《Dora (小叮当)》之铭言:
: 我想请问一下
: 我有四组分别为
: a=[1 0 0 0 0];
: b=[0 1 0 0 0];
: c=[0 0 1 0 0];
: d=[0 0 0 1 0];
: e=[0 0 0 0 1];
: 我要以组做排序
: 变成
: a a a a
: a a a b
: a a a c
: a a a d
: a a a e
: a a b a
: a a b b
: a a b c
: a a b d
: a a b e
: .
: .
: .
: .
: e e e e
: 就像是六进制的感觉
: 而内容会代入a b c d e 里的各五个数字
: 如第一行会变成
: 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0
: 第二行
: 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0
: 最後一行就是
: 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1
: 所以会变成750*20大小 的长条形矩阵
: (希望大家可以看得懂 我脑袋想的都乱了)
: 请问我大概要怎麽写呢
: 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.34.20.7
※ 编辑: okgogogo 来自: 114.34.20.7 (11/23 00:38)
※ 编辑: okgogogo 来自: 114.34.20.7 (11/23 00:39)
※ 编辑: okgogogo 来自: 114.34.20.7 (11/23 00:44)
1F:推 Raymond0710:最後可以改成A = cell2mat(p) 不用再for loop 11/24 21:55