-4

誰かが私のためにこれをしてくれませんか。

1 から 1000 までの値をランダムな順序で含む 1000 個の要素を持つ整数の配列を返す関数を作成します。番号を繰り返したり省略したりすることはできません。

上記の質問を解決するためのヒントは次のとおりRandom rnd=new Random()です。乱数ジェネレーターの新しいインスタンスを作成し、rnd.Next(1,1000)1 から 1000 の間のランダムな整数値を取得するために使用します。

どうもありがとう。

4

3 に答える 3

3

あなたの試験官はおそらくFisher-Yates Shuffleを探しているのではないかと思うので、次の答えはおそらく簡潔すぎるでしょう。

Random r = new Random();
public int[] GetArr()
{
    return Enumerable.Range(1, 1000).OrderBy(_ => r.Next()).ToArray();
}
于 2013-04-12T10:16:59.187 に答える
-1

試しましたか : -乱数を生成する -彼がすでにタブにいるかどうかを確認する -それを配列の最初の空き位置に配置する

唯一の問題は、最後に劇的に遅くなることです

于 2013-04-12T10:16:59.957 に答える
-2

int と bool を含むクラスを作成し、bool を「使用」し、次に int をインデックスにして、乱数ジェネレーターを使用して、出力に関連付けられた数値を取得する方法を試してみてください。次に、その番号がクラスの配列で使用されているかどうかを確認し、そうでない場合は int のリストにプッシュし、完了したらリストを配列として返しますか?

于 2013-04-12T10:21:56.570 に答える