做鬥地主項目,洗牌算法是一個很重的一步,怎樣“洗”的均勻,“洗”的随機,這是非常考究的,算法的優劣就直接會影響效果的好壞。這裡我給出一個算法,将0-53這54個數字直接排序,經測試還挺随機的。這裡要感謝@灰太龍的指導!這個算法是伺服器端用于傳回給用戶端牌的算法,主要的思想就是不斷的換牌,兩牌交換位置,如果循環次數增大的話,随機性也會更強,洗牌的效果更好!
Code:
C#:
運作截圖:
C++:
結果:
會發現還是挺随機的,如果将for循環取大一點就更随機了!
本文轉蓬萊仙羽51CTO部落格,原文連結:http://blog.51cto.com/dingxiaowei/1366165,如需轉載請自行聯系原作者