【发布时间】:2017-05-16 19:54:29
【问题描述】:
假设您有 n 个项目和 m 个垃圾箱。所有项目都相同,但垃圾箱不同。将物品随机分配到垃圾箱中的最快算法是什么?
例如 - 想象104 是将 5 件物品放入 3 个箱子中。 5 个物品有 21 种可能的放置方式进入 3 个箱子:
005 014 023
032 041 050
104 113 122
131 140 203
212 221 230
302 311 320
401 410 500
对于大量的物品和垃圾箱,我应该如何选择将n 物品放置到m 垃圾箱中,以便每个可能的位置都有相同的发生机会?对于给定的n 和m,选择将进行很多次。
【问题讨论】:
-
这个展示位置会做多少次?换句话说,这会做一次还是只做几次,所以设置时间很重要,还是会做很多次,所以设置成本不重要,因为它会分散(摊销)?内存要求是什么?例如,是否可以预先计算所有可能的位置并将其存储在内存中,然后程序随机选择一个?您没有提供足够的细节来选择“最快的算法”,所以您的问题现在还不清楚。
标签: algorithm math combinatorics