Unity___ Shuffle洗牌
洗牌算法
在遍历数组过程中,从i->length中随机获得一个下标
让该下标得元素与下标为i元素交换。
public static T[] ShuffleArray<T>(T[] array, int seed)
{
System.Random prng = new System.Random(seed);
for(int i = 0; i < array.Length; i++)
{
int randomIndex = prng.Next(i, array.Length);
//Swap
T tempItem = array[randomIndex];
array[randomIndex] = array[i];
array[i] = tempItem;
}
return array;
}