Re: [問題] array shuffle
※ 引述《BaronDavis5 (Baron Davis)》之銘言:
: ※ 引述《ephesians (ephesians)》之銘言:
: 我也是用這個方法,主要idea是很久以前離散數學學過的一個permutation group
: 我猜應該是和前述cycle decomposition類似概念的東西
: 但是我之前把它寫出來後,發現不同長度時,permutation group的量不一定
: 比如在元素長度8時,就存在二個permutation group (註1)
: 但是在長度20時,就只存在一個permutation group(皆扣掉頭尾元素)
: 目前也想不出有沒有什麼方法可以找出那些沒交集permutation group...
以這題來說,在計算第i位置元素要被擺放的位置時,要考慮兩種情況,
當i <= n時,元素要被放到 2i - 1 中
當i > n時,元素要被放到 2i % 2n中
不過麻煩的是,因為是一個cycle一個cycle去做,當檢查到元素i時,
我沒辦法判斷出這元素是已經到位了,還是沒有到位。
除非元素本身有特性可以判斷到位了沒,又或是元素可以修改,不然
我想不到方法,這也就是困難之處。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.119.162.51
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 9 之 9 篇):
Programming 近期熱門文章
PTT數位生活區 即時熱門文章