[討論] 1 -1 生成排列

看板MATLAB作者 (林英傑後援會!!!)時間10年前 (2015/04/10 15:32), 編輯推噓1(103)
留言4則, 1人參與, 最新討論串1/1
各位先進大家好 我現在遇到一個問題 我想要讓 1 -1 去排列生成向量 例如: 1 -1 生成 3個位置的排列 有 1 1 1 , 1 1 -1, 1 -1 1, 1 -1 -1 , -1 1 1, -1 1 -1, -1 -1 1, -1 -1 -1 我現在想寫出用 1 -1 生成 n^2個位置的排列 9個位置Matlab內建的函式還跑的動 25個就不行了 要生成2^25條 記憶體不足 不知道有沒有方法可以切割 每次生成10萬條 這樣分割就不會造成計算時記憶體不足 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.138.73.136 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1428651140.A.9EE.html

04/10 18:49, , 1F
就x=1:2^M(M比你25小 例如5好了)
04/10 18:49, 1F

04/10 18:50, , 2F
y=double(dec2bin(x))-48; z=2*y-1;然後用for去產生
04/10 18:50, 2F

04/10 18:50, , 3F
2^M+1:2^(2*M)的 以下類推
04/10 18:50, 3F

04/10 18:54, , 4F
所以x應該是寫N*2^M+1:(N+1)*2^M 這樣, N=0:2^(25-M)-1
04/10 18:54, 4F
文章代碼(AID): #1L9to4dk (MATLAB)
文章代碼(AID): #1L9to4dk (MATLAB)