看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Dev C++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 應該沒有吧 問題(Question): 使用者輸入數字後, 輸出所有可能之排列. 餵入的資料(Input): 假設是3好了 預期的正確結果(Expected Output): [1] 1, 2, 3 [2] 1, 3, 2 [3] 2, 1, 3 [4] 2, 3, 1 [5] 3, 1, 2 [6] 3, 2, 1 錯誤結果(Wrong Output):程式碼(Code):(請善用置底文網頁, 記得排版) http://ideone.com/7iBiyM 補充說明(Supplement): 分為 "不使用遞迴" 和 "使用遞迴" 兩種狀況 我先不用遞迴寫 -- 目前寫了一個陣列讓使用者輸入數字後才決定長度 也寫了temp2來得知說每個數字開頭有幾種可能 例: 使用者輸入3 則總共有3*2*1種排列 而1開頭2開頭3開頭分別有6/3=2種可能 有Google查過排列組合 但是真的看不太懂 我的想法只能知道每個數字開頭的有幾種 後面怎麼排我真的想不到 麻煩各位了 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.160.178.165 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1474302467.A.380.html
firejox: 可以去研究STL的next_permutation 怎麼寫的 09/20 02:46
Sidney0503: 作業自己做 09/20 08:12
springman: 用堆疊吧! 09/20 11:24
HolyBugTw: 我有點覺得這一行可能不適合你... 09/20 13:58
springman: 也不一定啦,看已經學程式設計多久了,記得我大一時對 09/20 16:12
springman: 類似的題目也沒有頭緒,對遞迴無法掌握,大約到大三 09/20 16:13
springman: 才慢慢能夠掌握。 09/20 16:14
Sidney0503: 不會就用暴力解 ok? 這不是程式能力的問題 09/20 20:06
Sidney0503: 而是基本數學思維不夠 自行搜Computational Thinking 09/20 20:08
ronin728: 不過國內基礎程式設計的書與課程都是教語法 09/20 22:42
ronin728: 很少有演算法方面具啟蒙性的課綱,通常要靠學生自己 09/20 22:43
noodleT: 先別管這題了,請先思考一下變數「命名」這幾個字 09/21 00:05