东莞专业网站设计专业服务,留住用户网站,合肥百度seo排名,网络服务遇到问题请检查网络状况或稍后再试吧题目信息: 给两个随机数和N#xff0c;生成M到N的随机不重复数组#xff0c;且MN。 示例#xff1a;输入M 2, N5, 输出 [4,3,2,5]. 思路#xff1a;洗牌算法#xff0c;先遍历M到N之间所有的数字#xff0c;将得到的结果存入一个集合中#xff0c;将集合从后往前遍历… 题目信息: 给两个随机数和N生成M到N的随机不重复数组且MN。 示例输入M 2, N5, 输出 [4,3,2,5]. 思路洗牌算法先遍历M到N之间所有的数字将得到的结果存入一个集合中将集合从后往前遍历遍历时在0和当前遍历到的列表最后一个下标i之间选择一个随机数J从0到i将随机数J下标对应的数字跟当前遍历到的下标i对换位置打乱列表顺序 我直接在Unity里写了代码如下 public int M;public int N;public int[] randomArray;private void Update(){if (Input.GetKeyDown(KeyCode.Space)){randomArrayGenerateRandomArray(M,N);}}int[] GenerateRandomArray(int m,int n){if (nm){return new int[0];}Listint numbers new Listint();for (int im;in;i){numbers.Add(i);}for (int inumbers.Count-1;i0;i--){int j Random.Range(0,i1);int temp numbers[i];numbers[i] numbers[j];numbers[j] temp;}return numbers.ToArray();}