相关疑难解决方法(0)

使用Random和OrderBy是一个很好的shuffle算法吗?

我在Coding Horror上读过一篇关于各种shuffle算法的文章.我已经看到人们已经在某个地方对列表进行了洗牌:

var r = new Random();
var shuffled = ordered.OrderBy(x => r.Next());
Run Code Online (Sandbox Code Playgroud)

这是一个很好的shuffle算法吗?它是如何工作的?这样做是否可以接受?

c# algorithm shuffle

160
推荐指数
5
解决办法
4万
查看次数

需要可预测的随机发生器

我是一名网络游戏开发者,我遇到了随机数问题.假设玩家有20%的几率用他的剑获得重击.这意味着,5次点击中的1次应该是至关重要的.问题是我的现实生活成绩非常糟糕 - 有时候球员在5次安打中得到3次降落,有时15次命中都没有.战斗相当短(3-10次命中),因此获得良好的随机分布非常重要.

目前我使用PHP mt_rand(),但我们只是将代码移动到C++,所以我想在游戏的新引擎中解决这个问题.

我不知道解决方案是否是一些统一的随机生成器,或者可能记住以前的随机状态以强制正确分配.

c++ random algorithm

151
推荐指数
16
解决办法
2万
查看次数

获得随机子集合的最佳LINQ查询 - Shuffle

请建议一种最简单的方法,从具有'N'项的集合中获取计数'n'的随机混洗集合.其中n <= N

c# linq ienumerable observablecollection

44
推荐指数
4
解决办法
2万
查看次数

标签 统计

algorithm ×2

c# ×2

c++ ×1

ienumerable ×1

linq ×1

observablecollection ×1

random ×1

shuffle ×1