這次帶給大家怎麼使用JS做出微信紅包演算法,使用JS做出微信紅包演算法的注意事項有哪些,下面就是實戰案例,一起來看一下。 z
我們假設有一個100元的紅包,要發給10個人。為了確保公平,演算法需要確保以下的原則:
每個人最少能搶到0.01元
每個人的機會平等
所有人的金額總和等於100元
#1.簡單的隨機函數實作
很多朋友的一般想法是:
#第一步:從0-100中隨機一個數,得到第一個紅包金額。
第二步:從0-剩餘金額隨機一個數,得到第二個紅包金額。
第三步:...
最後一步把剩餘的錢都給最後一個人。
以此類推,得到全部的10 個紅包。但不知道大家注意到沒有,這樣存在明顯的 不公平 。先搶的人比較有優勢,第一個人的隨機範圍是0-100,有可能得到較大的金額。而最後一個人的隨機範圍就會很小,如果第一個人搶到了90塊錢,那麼最後一個人就不可能有的到超過10塊錢的機會。我們用程式碼模擬一下這個過程:
測試結果如下:
##相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章! 推薦閱讀:
#
以上是怎麼使用JS做出微信紅包演算法的詳細內容。更多資訊請關注PHP中文網其他相關文章!