Generate N random and unique numbers within a range

后端 未结 7 1940
不知归路
不知归路 2020-11-27 07:50

What is an efficient way of generating N unique numbers within a given range using C#? For example, generate 6 unique numbers between 1 and 50. A lazy way would be to simply

相关标签:
7条回答
  • 2020-11-27 08:24
    var random = new Random();
    var intArray = Enumerable.Range(0, 4).OrderBy(t => random.Next()).ToArray();
    

    This array will contain 5 random numbers from 0 to 4.

    or

      var intArray = Enumerable.Range(0, 10).OrderBy(t => random.Next()).Take(5).ToArray();
    

    This array will contain 5 random numbers between 0 to 10.

    int firstNumber = intArray[0];
    int secondNumber = intArray[1];
    int thirdNumber = intArray[2];
    int fourthNumber = intArray[3];
    int fifthNumber = intArray[4];
    
    0 讨论(0)
提交回复
热议问题