Re: [問題] 排列組合~已回收

看板MATLAB作者 (凱文踢)時間16年前 (2009/02/27 09:34), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《cffap (cffap)》之銘言: : for a=0:6 : for b=0:6 : for c=0:6 : for d=0:6 : for e=0:6 : for f=0:6 : num2str(eval('[a,b,c,d,e,f]')) : end : end : end : end : end : end : 我是想要請問,我要如何從我上面寫的式子中篩選出只有1 2 3 4 5 6這六個 : 數字組成的各種排列組合? 可以幫我附上算式嗎? 篩選方法要有三種以上,我是有想到 : 用sum,標準差這兩種........ 可否再幫我想幾種呢? 不好意思 不知道是不是你需要的... %% a = 1:6; % 因為是1~6的不重複排列 for na = a % na會依序1~6跑 b = a; % b也設定成跟a一樣是1~6 b(b == na) = []; % 但是b會因為選擇不同的a而排除掉已經被選擇的那個數字 for nb = b % 剩下的b就去跑迴圈囉 c = b; % 下面以此類推 c(c == nb) = []; for nc = c d = c; d(d == nc) = []; for nd = d e = d; e(e == nd) = []; for ne = e f = e; f(f == ne) = []; for nf = f num2str([na nb nc nd ne nf]) % 不太曉得為什麼要用eval 所以沒加上去 end end end end end end %% 收工 請慢用 原則上我的處理方式就是a到f的一個一個慢慢排除 很暴力的方式... -- ╔═╦═╗ ╔═╗ ╔═══╗ ╭──╮ ║ ║╔══╗╔═╦╗╔═╗╔══╗║ ║ ╰╮ ║ ╣║ ═ ║║ ║║ ║║ ║║ ║ ║ ║║ ╣║ ║║ ║║ ║╚╗ ╔╝ ╚═╩═╝╚══╝╚══╝╚═╝╚═╩╝ ╚═╝ →→→→ http://www.wretch.cc/album/kevint ←←←← By luh4 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.148.130 ※ 編輯: KevinT 來自: 140.112.148.130 (02/27 09:35) ※ 編輯: KevinT 來自: 140.112.148.130 (02/27 09:54)
文章代碼(AID): #19fqCe8Z (MATLAB)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
文章代碼(AID): #19fqCe8Z (MATLAB)