美文网首页js
在指定范围生成指定长度的不重复数组

在指定范围生成指定长度的不重复数组

作者: u14e | 来源:发表于2017-03-22 21:08 被阅读33次

例如:生成一个长度为10,且不重复,数组的每一项在20-40之间

function getRandom(start, end) {
    const choices = end - start + 1;
    return Math.floor(Math.random() * choices + start);
}

function getUnique(len, start, end) {
    let arr = [],
        random;

    while(len > 0) {
        random = getRandom(start, end);
        if (arr.indexOf(random) === -1) {
            arr.push(random);
            len--;
        }
    }

    return arr;
}

console.log(getUnique(10, 20, 40));    // [36,26,40,23,38,35,39,28,34,32]

相关文章

  • 在指定范围生成指定长度的不重复数组

    例如:生成一个长度为10,且不重复,数组的每一项在20-40之间

  • JS生成指定范围随机数

    相关面试题:(01) 用递归算法实现,数组长度为5且元素的随机数在2-32间不重复的值 相关知识: 生成指定范围...

  • 无标题文章

    随机生成字符数组 封装一个方法getChars,该方法实现生成指定长度不重复的char数组,该数组的元素为26个字...

  • MongoDB 数组(Array)长度,大小,为空,等相关处理

    示例数据 一、获取数组长度 $size方法 二、按长度查找 1、指定长度字段为具体数值 2、指定长度字段为范围区间...

  • Java基本语法(2)

    new一个数组时:(1)需要指定数组的长度;(2)在声明数组的同时赋值时不能指定数组长度(3)数组长度:array...

  • Go 学习笔记 04 | 数组、切片

    一、数组 数组长度指定之后,不可修改。[...] 会自行推断数组长度。 指定索引值来初始化数组。 输出: 基本数据...

  • java基础--数组

    数组 可以一次存放多个数据 初始化数组 动态初始化(指定长度),指定数组元素的长度 静态初始化,不直接指定数据多少...

  • Go-Array

    golang初始化数组 golang中数组为值类型 方式1:指定数组长度 方式2:自行推断数组长度 方式3:指定索...

  • 10.一维数组

    一、数组:可以存放多个同一类型的值,必须指定长度 声明时,必须指定长度不是在声明类型的时候指定长度,而是在给多个值...

  • JavaScript开发技巧

    1.初始化数组(初始化一个指定长度的一维数组,并指定默认值) 2.初始化一个指定长度的二维数组,并指定默认值 3....

网友评论

    本文标题:在指定范围生成指定长度的不重复数组

    本文链接:https://www.haomeiwen.com/subject/xbdanttx.html