我有一組N個問題,每個問題都歸類爲R個主題之一。我試圖爲測驗產生一些隨機排列的問題。生成均勻分佈的隨機排列的算法
我該如何生成一組問題的隨機排列,使得沒有兩個連續的問題具有相同的主題?它並不需要完美;我只是不想讓有連續五個相同類型的問題的人。另外,如果這樣的排序是不可能的(如A中的18和B中的2),那麼算法是否可以找到「均勻分佈」的排列組合? (在這種情況下,合理地喜歡6As,B,7As,B,5As)
另外,因爲我順序提交問題,我可以每次隨機選擇一個不同的主題剩餘的問題,沒有機會最後迫使一些重複?
我已經在Google上隨機瀏覽了一段時間,似乎找不到適合此情況的任何內容。除了隨機生成排列,直到找到一個有效的排列,這是緩慢,醜陋和愚蠢的。
爲什麼你不能找到任何適合你的情況下,「隨機」的原因,是因爲你的約束實際上讓**不是隨機的**。你希望它是平衡的,而不是隨機的。 –
......「關閉的主題」是什麼意思,爲什麼它適用於這個問題? ?_? – user2449745