[討論] 如何找出所有組合

看板MATLAB作者 (克里斯)時間12年前 (2013/07/16 21:46), 編輯推噓1(102)
留言3則, 1人參與, 最新討論串1/1
目前因為程式上需求 需要寫一個能夠找出一陣列內所有相加後可能的值 例如:一陣列內容有1 2 3 4 5 那可能會產生的值就會有 1 2 3 4 5 1+2 1+3 1+4 1+5 2+3 2+4 2+5 3+4 3+5 4+5 1+2+3 1+2+4 1+2+5 1+3+4 1+3+5 1+4+5 2+3+4 2+3+5 3+4+5 1+2+3+4 1+2+3+5 2+3+4+5 1+2+3+4+5 想請問Matlab有相關的做法嗎? 還在努力想有什麼相關聯>"< -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.38.122.183

07/17 00:14, , 1F
不介意用for的話, Result=1:5;for i=2:5,
07/17 00:14, 1F

07/17 00:14, , 2F
Result=[Result,sum(combntns(1:5,i)')];end
07/17 00:14, 2F

07/17 00:15, , 3F
就可以得到31種組合的sum,如果只是要看值,加上unique即可
07/17 00:15, 3F
文章代碼(AID): #1HvKwPiu (MATLAB)