Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 如何在数组中对值进行简单的随机排序_Arrays_Sorting_Random - Fatal编程技术网

Arrays 如何在数组中对值进行简单的随机排序

Arrays 如何在数组中对值进行简单的随机排序,arrays,sorting,random,Arrays,Sorting,Random,我需要在数组中对这些值进行随机排序 int [] d = new int[26]; d[0]=1; d[1]=5; d[2]=10; d[3]=25; d[4]=50; d[5]=75; d[6]=100; d[7]=200; d[8]=300; d[9]=400; d[10

我需要在数组中对这些值进行随机排序

int [] d = new int[26];  
        d[0]=1;  
        d[1]=5;  
        d[2]=10;  
        d[3]=25;  
        d[4]=50;    
        d[5]=75;  
        d[6]=100;  
        d[7]=200;  
        d[8]=300;  
        d[9]=400;  
        d[10]=500;  
        d[11]=750;  
        d[12]=1000;  
        d[13]=2000;  
        d[14]=3000;  
        d[15]=4000;  
        d[16]=5000;  
        d[17]=7500;  
        d[18]=10000;  
        d[19]=25000;   
        d[20]=50000;  
        d[21]=100000;  
        d[22]=250000;  
        d[23]=500000;  
        d[24]=750000;  
        d[25]=1000000;  

假设你在C++中写这个,你可以使用标准库中的<代码> RealthyStuffle < /Cuff>函数模板。p> 如果您想编写自己的函数,只需取两个随机索引并交换它们的值即可。将其放入一个循环中,并尽可能多次地执行该操作,以使数组得到良好的洗牌(我会说,次数等于数组中元素数量的两倍)

在psudo代码中(因为您没有指明语言)

洗牌次数=2;
对于(ix=0;ix

还有更复杂的方法可以做到这一点。查看此讨论:

如果您可以使用java

Arrays.shuffle(d);

可能重复:顺便说一句,
sort
random
基本上是相互矛盾的术语,除非你说的是像Bogosort这样的词。他很可能指的是洗牌,而不是排序
Arrays.shuffle(d);