首页 > 解决方案 > 无重复的随机数生成器

问题描述

我正在尝试研究如何制作一个随机数生成器,它输出 4 个从 0 到 9 的整数而没有任何重复。

在此处输入图像描述

需要一些帮助,我刚开始用 c# 编码,但找不到我的问题的任何答案

标签: c#random

解决方案


对于“快速而肮脏”的解决方案,您可以使用LINQ. 例如,这样的事情会随机选择 0 到 9 范围内的 4 个数字:

var random = new Random();
var numbers = Enumerable.Range(0, 10)
    .OrderBy(_ => random.Next())
    .Take(4)
    .ToList();

如果您需要更精确和更快的东西,那么您可以实施Fisher-Yates shuffle例如。


推荐阅读