在c++中產生n個0和m個1的排列

看板Programming作者 (陳揚和)時間14年前 (2009/11/08 14:07), 編輯推噓2(2011)
留言13則, 5人參與, 最新討論串1/2 (看更多)
這應該是個簡單recursive可以完成的問題 而且我查到stl的next_permutation可用,但好像僅適用在n個不同的element 用在這個問題 就太多pattern被重複列舉了... 在Python中有個好用的關鍵字叫yield...可以在停在function的某行return 下次call此funciton時繼續 我的問題是,有沒有什麼stl或object可以在c++做同樣的事呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 204.140.141.12

11/08 23:15, , 1F
用recursive你的記憶體很快就爆了
11/08 23:15, 1F

11/09 03:08, , 2F
thanks.. my n<30 m<10, so it is ok
11/09 03:08, 2F

11/09 05:59, , 3F
寫個recursive才幾行而已 比打上來還快 XD
11/09 05:59, 3F

11/09 10:07, , 4F
but I need to test for each enum pat
11/09 10:07, 4F

11/09 10:09, , 5F
so I need to write to a file or
11/09 10:09, 5F

11/09 10:09, , 6F
test in the recursive.
11/09 10:09, 6F

11/09 10:10, , 7F
yield is more elegant.
11/09 10:10, 7F

11/09 11:19, , 8F
最簡單是把1~N做next_permutation,然後
11/09 11:19, 8F

11/09 11:20, , 9F
用排列的數字當索引,查查是n或m.
11/09 11:20, 9F

11/09 11:21, , 10F
C++不專處理pattern,在這方面當然不elegant.
11/09 11:21, 10F

11/09 21:24, , 11F
喔,我搞錯了,我講的會重複列出排列情況
11/09 21:24, 11F

04/19 13:35, , 12F
給原po:n 個元素不必完全不同也可以
04/19 13:35, 12F

04/19 13:36, , 13F
使用 next_permutation() 哦!
04/19 13:36, 13F
文章代碼(AID): #1Azc07OX (Programming)
文章代碼(AID): #1Azc07OX (Programming)