加载中...

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;
    } 
posted @ 2022-10-30 11:38  lxp_blog  阅读(115)  评论(0编辑  收藏  举报