产生指定范围不重复的随机数,产生指定数组不重复的随机数
/** * 产生指定范围不重复的随机数 * 参数一: 最小值 int * 参数二: 最大值 int * 参数三: 随机数量 int * 返回值: 结果数组 Array **/ function getRandNumForRange(least, max, num) { // 检查传值是否合法 if(num > max - least) return false; // 产生指定范围的所有数值 var numList = [], numRandList = [], randId; for(var i = least; i < max; i++) numList.push(i); // 产生记录次数 for(var i = 0; i < num; i++) { randId = Math.floor(Math.random() * numList.length); // 随机一个数组ID numRandList.push(numList[randId]); // 获取这个值 numList.splice(randId, 1); // 删除这个成员 防止下次再次生成 } return numRandList; } /** * 产生指定数组不重复的随机数 * 参数一: 抽取数组 Array * 参数二: 随机数量 int * 返回值: 结果数组 Array **/ function getRandNumForArray(numArray, num) { // 检查传值是否合法 if(num > numArray.length) return false; // 产生记录次数 var numRandList = [], randId; for(var i = 0; i < num; i++) { randId = Math.floor(Math.random() * numArray.length); // 随机一个数组ID numRandList.push(numArray[randId]); // 获取这个值 numArray.splice(randId, 1); // 删除这个成员 防止下次再次生成 } return numRandList; }
如果真的不知道将来要做什么,索性就先做好眼前的事情。只要今天比昨天过得好,就是进步。长此以往,时间自然会还你一个意想不到的未来。
生活像一个杯子。一开始,里面是空的,之后,要看你怎么对待它。如果你只往不如意的方面想,那么你最终辉得到一杯苦水。如果你往好的方面想,那么你最终会得到一杯清泉。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
生活像一个杯子。一开始,里面是空的,之后,要看你怎么对待它。如果你只往不如意的方面想,那么你最终辉得到一杯苦水。如果你往好的方面想,那么你最终会得到一杯清泉。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。