作者Archer1124 (哈)
看板MATLAB
标题Re: [问题]for回圈问题
时间Thu Oct 11 15:28:14 2012
※ 引述《ben2103gto (不要调查我)》之铭言:
: 小弟新手,问到蠢问题 请勿见怪。
: 采用方法: Brute Force,以下提供问题码
: for i=1:11
: for j=1:11
: for k=1:11
: .
: a=[i j k l m n o p q r s t];
: . result=fun_A(a);
: .
: end
: end
: end
: 打出这麽笨的问题码,请原谅。
: 假使总共有12个变数,每个变数有一到十一的可能(1 2 3...11)
: 每次产生一种组合就会跑出一个结果值,
: 目的就是要取得什麽组合下会有最大的result值。
: 想请问这种巢状回圈有没有更聪明的写法,不然要跑超久 = =冏
: 感谢大家耐心看完此问题,在烦请大家给我点意见。
使用fullfact这个指令,ex. a = fullfact([11 11 11]);
这个指令可以跑出所有可能的排列组合的矩阵,
可是因为你的变数有12个,每个变数有11种可能,
所以这个矩阵的size将会非常惊人,
刚刚稍微试过,结果跑出out of memory的讯息,
或许有更好的作法也不一定,再想想~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.254.217.126
1F:推 ben2103gto:感谢大大的回答。 10/12 09:20