乱数生成の変更
class NumberArray
{
private int[] number_;public NumberArray(int count)
{
number_ = new int[count];var rnd = new int[count];
for (int i = 0; i < count; i++)
{
rnd[i] = i;
}for (int i = 0, size = count; i < count; i++, size--)
{
var pos = new Random().Next(size);
number_[i] = rnd[pos];for (int j = pos; j < size - 1; j++)
{
rnd[j] = rnd[j + 1];
}
}
}public int[] ToList()
{
return number_;
}
}
}
↓
class NumberArray
{
private Listnumber_; public NumberArray(int count)
{
var rnd = Enumerable.Range(0, count).ToList();number_ = new List
(count);
for (int i = 0; i < count; i++)
{
var pos = new Random().Next(rnd.Count);
number_[i] = rnd[pos];
rnd.RemoveAt(pos);
}
}public List
ToList()
{
return number_;
}
}
ここに入ってる List
呼び出し側を以下のように変更したい
var rnd = new NumberArray(10).ToList();
↓
var rnd = new NumberArray(10).ToList();