zoukankan      html  css  js  c++  java
  • js获取一组不重复的随机数的方法

    一、基本思路:

    建立一个数组存放所有可能取到的值,每次从该数组中随机取走一个,放到新的数组中,直到完成。

    二、实现方法

    1、方法一:

    (1)创建一个数组arr,数组元素为所有可能出现的随机数的集合;

    (2)通过num=Math.floor(Math.random()*num_total*first_value)方法获取一个随机数。

     随机数的范围为0-arr.length;(用来随机抽取arr任意位置的数组项)

    (3)通过arr[num]获取数组该位置的元素,并push到目标数组;

    (4)通过arr.splice(num,1)删除该元素;

    (5)循环到(1)获取下一个随机数

    完整写法为:

    function roa(arr)    //arr为可能出现的元素集合
    {
        var temp=new array();    //temp存放生成的随机数组
       var count=arr.length;    
        for (i=0;i<count;i++)
        { 
            var num=Math.floor(Math.random()*arr.length); //生成随机数num
            temp.push(arr[num]);    //获取arr[num]并放入temp
            arr.splice(num,1);    
        }
        return temp;
    }
  • 相关阅读:
    Java relection half
    QT学习输入与输出
    FusionCharts(基于Flash的图表工具)使用心得
    测接口遇到的坑
    创建圆
    修改对象属性
    创建直线
    ObjectArx工程配置
    Excel转PDF文件,Excel转TIF文件
    创建多段线
  • 原文地址:https://www.cnblogs.com/pangys/p/5612437.html
Copyright © 2011-2022 走看看