ZKX's LAB

JavaScript问题:一个有一百个随机数字的数组中(可能有重复数字),随机抽取十个,且这十个数字不重复。 js随机抽取数组不重复

2020-07-24知识13

JS 在指定数组中随机取出N个不重复的数据 复制代码 代码如下:<;script language= javascript >;/从一个给定的数组arr中,随机返回num个不重复项function getArrayItems(arr,num){。js怎么在这个二维数组中,随机抽取一组,或者随机获取该数组的下标 给你个提示吧,你可以随机出位置,然后就行了例子:StrRand=\";int i,j;Random random=new Random(DateTime.Now.Millisecond);i=random.Next(a[0].length);j=random.Next(a[0][0].length);最终的得出的随机数a[i][j]js 怎么获取指定范围内不重复的随机数 function getArrayItems(arr,num){新建一个数组,将传入的数组复制过来,用于运算,而不要直接操作传入的数组;var temp_array=new Array();for(var index in arr){temp_array.push(arr[index]);}剔除一些数字取出的数值项,保存在此数组var return_array=new Array();for(var i=0;i判断如果数组还有可以取出的元素,以防下标越界if(temp_array.length>;0){在数组中产生一个随机索引var arrIndex=Math.floor(Math.random()*temp_array.length);将此随机索引的对应的数组元素值复制出来return_array[i]=temp_array[arrIndex];然后删掉此索引的数组元素,这时候temp_array变为新的数组temp_array.splice(arrIndex,1);} else {数组中数据项取完后,退出循环,比如数组本来只有10项,但要求取出20项.break;}}return return_array;}var my_array=new Array();for(i=min;i;i+)/max,min指定范围{my_array[i]=i;}my_array=getArrayItems(my_array,1000);得到数组function rand(u,d){d;return parseInt(Math.random()*(u-d)+d);}怎样从一个数组中(数组大小不定)随机取出一个数,随机数不能重复的。 随机生成数组下标,取出该下标对应元素,然后标记该位置元素,如果下次再遇到就重新生成下一个随机数。c++ 从数组中随机的取出一个数(不能重复) 随机显示5个数组元素t=rand()%n,13,30,t;i){/stdio,38,54,19};n\".h>;include,87,95;stdlib.h>;,a[t]);}return 0;全部初始化为0int i,t,n=10,m=5;}else i-;if(b[t]=0){b[t]=1;printf(\"a[%d]=d\\include;i;a[1]=36a[7]=38a[3]=13a[6]=95a[8]=54Press any key to continueincludesrand((unsigned)time(NULL));for(i=0;int b[10]={0};36,52.h>;int main(){int a[10]={12用js实现随机选取10–100之间的10个且不重复的数字,存入一个数组。 纯手打,不谢。var randoms=[];while(true) { var isExists=false;获取一个10–100范围的数 var random=parseInt(10+(90-10)*(Math.random())) 判断当前随机数是否已经存在。用JS做不重复随机数。 var r=parseInt(Math.random()*38);var array=[];for(var i=0;i;i+){var flag=0;do{for(var j=0;j;j+){if(array[j]=r){flag=1;break;}}if。flag){array[array.length]=r;}else{r=parseInt(Math.random()*38);}}while。flag);}for(var j=0;j;j+)document.write(array[j]+\"\");如何从数组中随机取出多个不重复的项 /从一个给定的数组arr中,随机返回num个不重复项function getArrayItems(arr:Array,num:Number):Array {/新建一个数组,将传入的数组复制过来,用于运算,而不要直接操作传入的数组;var temp_array:Array=new Array();for(var index in arr){ temp_array.push(arr[index]);}/取出的数值项,保存在此数组var return_array:Array=new Array();for(var i=0;i;i+){/判断如果数组还有可以取出的元素,以防下标越界if(temp_array.length>;0){/在数组中产生一个随机索引var arrIndex:Number=Math.floor(Math.random()*temp_array.length);将此随机索引的对应的数组元素值复制出来 return_array[i]=temp_array[arrIndex];然后删掉此索引的数组元素,这时候temp_array变为新的数组 temp_array.splice(arrIndex,1);} else {/数组中数据项取完后,退出循环,比如数组本来只有10项,但要求取出20项.break;} } return return_array;}/测试var my_array:Array=new Array();for(var i=0;i;i+){ my_array[i]=\"Num:\"+i;} my_array=getArrayItems(my_array,5);for(var i=0;i;i+){ trace(my_array[i]);} JavaScript代码,和AS类似:从一个给定的数组arr中,随机返回num。c++ 从数组中随机的取出一个数(不能重复) a[1]=36a[7]=38a[3]=13a[6]=95a[8]=54Press any key to continue*/include<;stdio.h>;#include<;stdlib.h>;#include<;time.h>;int main(){ int a[10]={12,36,52,13,30,87,95,38,。JavaScript问题:一个有一百个随机数字的数组中(可能有重复数字),随机抽取十个,且这十个数字不重复。 比如这个数组有100多个值var arr=new Array(1,3,2,3,5,5,4,6,8,9,10,11,11,12,12,13,13,14);获取数组中的随机值函数function rand(arr){var num=parseInt(Math.random()*(arr.length));return arr[num];}创建一个新数组arr2=new Array();从arr中抽出10个不重复的值赋予arr2var i=1;while(i){num=rand(arr);判断num随机值在arr2中是否已存在if(arr2.indexOf(num)=-1){arr2[i]=num;document.write('抽取的第'+i+'个数字为'+num+'');alert('抽取的第'+i+'个数字为'+num);i+;}else{alert('抽取的结果中已存在'+num+'需要重新获取');}}

#array#num

随机阅读

qrcode
访问手机版