Programming 板


LINE

※ 引述《comduffer ()》之銘言: : -- :



※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 115.81.151.46 : 推 wa120:遞迴@@? 140.133.9.113 01/02 09:51 : 推 bigpigbigpig:你可以用一個 array 和一個 level 118.160.70.193 01/02 10:13 : → bigpigbigpig:變數,將它們包裝成一個物件,然後 118.160.70.193 01/02 10:14 : → bigpigbigpig:一直踢 (increment) 它,就可以得到 118.160.70.193 01/02 10:15 : → bigpigbigpig:目前組態,若傳回 false 代表結束, 118.160.70.193 01/02 10:15 : → bigpigbigpig:就像 STL 的 next_premutation 一樣 118.160.70.193 01/02 10:16 : → bigpigbigpig: next_permutation 118.160.70.193 01/02 10:25 : → comduffer:抱歉我程度太差 聽不董 115.81.151.46 01/02 10:33 : → comduffer:我的程度只有剛學程式的中學生那樣吧 115.81.151.46 01/02 10:33 他的意思,你可以這樣理解: 假設你要做 (以下全是 psuedo code) for i = 1 to a for j = 1 to b for k = 1 to c // do something 究竟做了多少次 "do something"? 其實就是 a*b*c 那麼多次,那麼把它改成: for x = 1 to (a*b*c) // do something 但你要怎麼知道每次 iteration 的 x 代表的 i j k 是什麼? 其實就是 for x = 1 to (a*b*c) i = x / a + 1 j = (x mod a) / b + 1 k = x mod c + 1 // do something 但這樣寫 a*b*c 可能大於整數上限,所以不如就: int vars[3] = {1,1,1} // 三個 element 長的 array, 代表 i,j,k int varLimits[3] = {a,b,c} // 記錄每個的上限 while (increment(vars, varLimits) != false) // do something function boolean increment(int[] vars, int[] varLimits) { // 自己想想怎麼寫 // 大概是先 increment vars 的第一個數字 (k),要是達到對應的 // 上限,就設回 1, 並 increment 下一個數字,如此類推 } 意思就是這樣 --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.77.15.226
1F:推 willhunting:強悍 74.68.114.250 01/03 01:54
2F:推 z220:推超級強悍XD 61.57.103.14 01/09 03:15
3F:推 makeman:可是好處是什麼 ? 速度會快一點嗎? 211.22.55.187 01/13 13:52
4F:→ adrianshum:樓上說的是和什麼比較的好處? 202.155.236.82 01/14 18:06
5F:→ sunneo:我覺得額外的好處是--碰到層數會變的迴圈 118.171.85.102 02/05 03:27
6F:→ sunneo:比如一般以遞迴來處理的nested list 118.171.85.102 02/05 03:27
7F:→ sunneo:這會是一種解決方案 118.171.85.102 02/05 03:28







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燈, 水草

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

TOP