随机选择1到10个数字而不重复一个数字的最佳方法是什么?

松鼠

有没有一种有效的方法可以将整数解包为随机的唯一数字?

我想10成为3 4 6 1 0 2 5 7 8 9

我想...但推值到阵列中去循环之前疯狂,我想或许有更好的办法。

编辑:

这是我的新功能功能:

function uniqueDigits(x){
    y = [];
    z = [];
    while(x > 0) {    
        y.push(x);
        x--;
    } 
    while(y.length > 0){
        var r = Math.floor(Math.random()*y.length);
        var u = y[r]
        y.splice(r, 1);
        z.push(u-1);
    }         
    return z;
}

uniqueDigits(4) //['2', '3', '0', '1']

编辑:

还有另一个选择

function uniqueNum(x){
  z = y = x;
  var r = Math.ceil(Math.random() * x);

  while ( x%r%2 == 0 ) {
    r = Math.ceil(Math.random() * x);
  }

  while( x>0 ){
    y = y - r     
    if(y<0){ 
      var n = y; 
      y = z + n 
    }   
    $('p').append(y);
    x--
   }    
} uniqueNum(4);//['2', '3', '0', '1']

一个太

好了,我完成了。

阿伦·约翰尼

由于您要查找范围内的所有数字,请尝试

var x = 10,
    array = [];
for (var y = 0; y < x; y++) {
    array.push(y);
}
while (array.length) {
    var random = Math.floor(Math.random() * array.length);
    $('p').append(array.splice(random, 1));
}

演示:小提琴


使用数组的另一种方法是

var x = 10,
    array = [];
//used for counting the loop for performance testing - remove it
var counter = 0;
for (var y = 0; y < x;) {
    var random = Math.floor(Math.random() * x);
    if ($.inArray(random, array) == -1) {
        $('p').append(random);
        array.push(random);
        y++;        
    }
    //for test
    counter++;
}
console.log(counter)

演示:小提琴-但循环执行太多次

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

矩阵从1到52的随机数不重复,但始终保持重复1个数字

来自分类Dev

矩阵从1到52的随机数不重复,但始终保持重复1个数字

来自分类Dev

矩阵从1到52的随机数不重复,但始终保持重复1个数字

来自分类Dev

从两个数字中随机选择一个数字

来自分类Dev

从两个数字中随机选择一个数字

来自分类Dev

读取10个数字并显示而不重复

来自分类Dev

随机选择一个5位数字,然后分别选择每个数字有什么区别?

来自分类Dev

随机选择一个5位数字,然后分别选择每个数字有什么区别?

来自分类Dev

如何选择一个数字?

来自分类Dev

创建一个数字从1到3的熊猫列,然后再次重复

来自分类Dev

确定一个数字是否大于,小于或等于另一个数字的最短方法是什么?

来自分类Dev

如果数字与前一个数字匹配,则生成一个随机数字

来自分类Dev

我的程序生成50个随机数,第一个数字在1到2之间,第二个数字在1-3之间。最后一个在1到50之间

来自分类Dev

一个数字的数字总和

来自分类Dev

每秒随机添加/减去一个数字的Javascript

来自分类Dev

在Oracle SQL中随机获取一个数字

来自分类Dev

使用math.random()随机选择一个数字

来自分类Dev

使用math.random()随机选择一个数字

来自分类Dev

PHP:随机数,没有重复,没有前一个和后一个数字

来自分类Dev

CSS选择一个数字输入

来自分类Dev

CSS选择一个数字输入

来自分类Dev

无法从MySQL PHP中选择一个数字

来自分类Dev

从两列中选择一个数字并计算

来自分类Dev

将数据从多个表/一个数据库传递到视图的最佳方法是什么?

来自分类Dev

将数据从多个表/一个数据库传递到视图的最佳方法是什么?

来自分类Dev

选择包含每个数字但不仅包含一个数字的某些值

来自分类Dev

Javascript:减少到一个数字

来自分类Dev

UNIX时间戳记中的最后一个数字是什么意思?

来自分类Dev

http GET请求上的最后一个数字是什么?

Related 相关文章

  1. 1

    矩阵从1到52的随机数不重复,但始终保持重复1个数字

  2. 2

    矩阵从1到52的随机数不重复,但始终保持重复1个数字

  3. 3

    矩阵从1到52的随机数不重复,但始终保持重复1个数字

  4. 4

    从两个数字中随机选择一个数字

  5. 5

    从两个数字中随机选择一个数字

  6. 6

    读取10个数字并显示而不重复

  7. 7

    随机选择一个5位数字,然后分别选择每个数字有什么区别?

  8. 8

    随机选择一个5位数字,然后分别选择每个数字有什么区别?

  9. 9

    如何选择一个数字?

  10. 10

    创建一个数字从1到3的熊猫列,然后再次重复

  11. 11

    确定一个数字是否大于,小于或等于另一个数字的最短方法是什么?

  12. 12

    如果数字与前一个数字匹配,则生成一个随机数字

  13. 13

    我的程序生成50个随机数,第一个数字在1到2之间,第二个数字在1-3之间。最后一个在1到50之间

  14. 14

    一个数字的数字总和

  15. 15

    每秒随机添加/减去一个数字的Javascript

  16. 16

    在Oracle SQL中随机获取一个数字

  17. 17

    使用math.random()随机选择一个数字

  18. 18

    使用math.random()随机选择一个数字

  19. 19

    PHP:随机数,没有重复,没有前一个和后一个数字

  20. 20

    CSS选择一个数字输入

  21. 21

    CSS选择一个数字输入

  22. 22

    无法从MySQL PHP中选择一个数字

  23. 23

    从两列中选择一个数字并计算

  24. 24

    将数据从多个表/一个数据库传递到视图的最佳方法是什么?

  25. 25

    将数据从多个表/一个数据库传递到视图的最佳方法是什么?

  26. 26

    选择包含每个数字但不仅包含一个数字的某些值

  27. 27

    Javascript:减少到一个数字

  28. 28

    UNIX时间戳记中的最后一个数字是什么意思?

  29. 29

    http GET请求上的最后一个数字是什么?

热门标签

归档