[問題] 排列組合問題

看板MATLAB作者 (好聽木琴)時間11年前 (2013/04/09 09:42), 編輯推噓2(209)
留言11則, 3人參與, 最新討論串5/7 (看更多)
Matlab菜鳥發問~~ 我想要寫21個七維向量 寫法如下, v1= (5/7,5/7,-2/7,-2/7,-2/7,-2/7,-2/7) v2= ... .... v21= ... 這21個向量都是五個5/7,跟兩個-2/7排列組合 ...一共7!/(2!5!) =21 最後我想要一個矩陣, F= [v1,v2....v21] 7x21的矩陣。 請問要如何generate這個矩陣阿? 我想知道系統一點的方法寫,因為下一個可能是要28個36個45個 etc.. 不能一值硬幹下去的 感恩~~~ 該用迴圈嬤? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 71.114.93.173

04/09 10:16, , 1F
nchoosek
04/09 10:16, 1F

04/09 10:28, , 2F
thanks~
04/09 10:28, 2F

04/09 10:29, , 3F
樓上不對喔 這要用perms
04/09 10:29, 3F

04/09 10:32, , 4F
Y = unique(perms([1 1 2 2 2 2 2])); 把1 2取代你要的即可
04/09 10:32, 4F

04/09 10:36, , 5F
sorry Y = unique(perms([1 1 2 2 2 2 2]), 'rows');才對
04/09 10:36, 5F

04/09 10:36, , 6F
少一個引數
04/09 10:36, 6F

04/09 10:38, , 7F
不過請小心perms數量太多的記憶體及速度問題 元素太多建議
04/09 10:38, 7F

04/09 10:39, , 8F
自己用loop產生
04/09 10:39, 8F

04/09 15:14, , 9F
v1=[-2 -2 5 5 5 5 5]/7;v2=[5 5 5 5 5 -2 -2]/7;
04/09 15:14, 9F

04/09 15:14, , 10F
[nchoosek(v1,2) nchoosek(v2,5)]
04/09 15:14, 10F

04/10 05:32, , 11F
thank you~
04/10 05:32, 11F
文章代碼(AID): #1HOt8CDc (MATLAB)
文章代碼(AID): #1HOt8CDc (MATLAB)