Programming 板


這邊有一個 vbscript 的: http://tlcheng.twbbs.org/TLCheng/Basic/vbs/samples/Combination.htm 是當初 vb 研究小站的遞迴示範,支援相同字不重複,例如: 12345 傳回 120 組 豬頭小瓜瓜 因為瓜瓜為重複,省略重複部分為 60 組 ==> 本文由 "骨頭 <[email protected]>" > 於 news:4WSaPM%2495Z%40ptt.cc 發表 > > ※ 引述《mycircle (Careless whisper)》之銘言: > : ※ 引述《TonyQ (骨頭)》之銘言: > : 感謝回文和推文的網友 我把我的問題再說清楚一點好了 > : 這個問題其實是一個老問題了 我拿來做練習而已 > : 題目如下 > : 如何列出1..n 的所有排列組合 > : 例如 123 的所有排列組合 為 123 132 321 132 213 231 3! = 6種 > : 可是如果12345 勒 就將近有120種排列組合 如果擴增到 1...10勒 > : 就會有10!=3628800種 > : 的排列組合 > : 這時人腦便沒辦法一個一個將他展現出來了 > : 而且此類問題可以歸類為NP hard 問題 也就是數字規模增大 > : 求解時間以及複雜度將會非線性的來增加 > : 我一開始的想法是用暴力法 也就是所謂的窮舉法一一把他列出 > : 但我知道如網路上這位網友所提的概念 > : http://new-acos.blogspot.com/2007/07/blog-post_04.html > : 會比較節省演算的效率與記憶體 > : 不過還是嘗試寫看看 因為我還是新手 > : 兩種窮舉法的原始碼列舉如下(意思是差不多的) 我寫在EXCEL 的VBA上 > : 第一種 : > : ======== 問題來了 ====== > : 在寫的過程中 在第一種窮舉法時 > : 我本來是想寫成動態的 也就是我希望當使用者只要改變N的大小 就可以了 > : 但是我發現 以這個問題為例 > : 像for next 以及 if then 的這些條件式 都會隨著N的增加而增加 > : 我就突然想到 如果以後碰到這類問題時該如何解決 > : 如果我以後只要碰到 變數增加時 我的條件式也會增加時 我該如何處理 > : 程式寫得很糟 只是在寫的過程中 想到這個問題 > : 所以想問看看高手是如何處理這類問題的 感謝您抽空看完我的文章 謝謝 > 基本上正常的問題碰到這種狀況都會想辦法轉換成 > 不用變數增加判斷式就跟著增加的寫法 -.-;; > 這就是為甚麼會有 NP complete & transfer and conquer的由來 XD > 因為要轉換問題變成比較好解決的問題。 > 我剛有寫個sample , 不過該死的vb 6竟然不報備關掉了 , > 就算了 , 只留下一個recursive解 .Q_Q > ──────────────────────────────── > 當初在做這題的時候我是取巧用string來做 > 當然這題也是典型的遞回題 > 記得他沒有內建stack類別 , 所以就建議用遞回寫 > 當然算排列組合的話 , 這還不是最快的 , > 因為你可以把reverse算一種 , 可以減少一半的cost . > > ──────────────────────────────── > Dim inputStr As String > inputStr = "12345" > Dim n As Integer > n = Len(inputStr) > printStr "", inputStr > Sub printStr(strNow As String, strNext As String) > Dim n > n = Len(strNext) > If n = 0 Then > List1.AddItem (strNow) > '用你想要顯示的方法替換掉 > Else > For i = 1 To n > printStr strNow & Mid(strNext, i, 1), Mid(strNext, 1, i - 1) & _ > Mid(strNext, i + 1, n - i) > Next > End If > End Sub > > > -- 風禹科技驗證有限公司 ASP.NET Web News Reader 0.2.7 UTF-8 Beta 網站地圖 http://tlcheng.twbbs.org/wwwmap.htm 流域防洪/區域水資源/徐昇網/玫瑰圖/語音通訊 文章與程式 Basic/Fortran/Windows API/.Net/輔助說明檔 原始碼、文章與討論 微軟程式設計、系統管理使用新技術論壇討論區,網友回覆後即時簡訊、電子郵件通知: MSDN: http://forums.microsoft.com/msdn-cht/default.aspx?siteid=14 TechNet: http://forums.microsoft.com/technet-cht/default.aspx?siteid=23 -- ASPNET News Reader http://tlcheng.twbbs.org/News/Reader.aspx RSS 2.0 http://tlcheng.twbbs.org/News/rss2.aspx?Action=List&Newsgroup=tw.bbs.comp.language







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草
伺服器連線錯誤,造成您的不便還請多多包涵!
「贊助商連結」






like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BuyTogether站內搜尋

TOP