当前位置: 首页 > news >正文

js实现生成随机数值的数组

生成随机数值的数组

  • 方法一:使用while循环和Set
// min 开始数值, max 结束数值, count 数组内填充几个数值
function generateUniqueRandomNumbers(min, max, count) {  let result = new Set();  while (result.size < count) {  let num = Math.floor(Math.random() * (max - min + 1)) + min;  result.add(num);  }  return Array.from(result);  
}  
// 使用方式 输出结果为 1-9之间的三个随机数
let uniqueRandomNumbers = generateUniqueRandomNumbers(1, 9, 3);  
  • 方法二:先生成数组再排序去重
// 数组去重操作
function shuffleArray(array) {  for (let i = array.length - 1; i > 0; i--) {  const j = Math.floor(Math.random() * (i + 1));  [array[i], array[j]] = [array[j], array[i]];  }  return array;  
}  
// 生成随机数值
function generateUniqueRandomNumbersV2(min, max, count) {  let numbers = [];  for (let i = min; i <= max; i++) {  numbers.push(i);  }  numbers = shuffleArray(numbers);  return numbers.slice(0, count);  
}  let uniqueRandomNumbersV2 = generateUniqueRandomNumbersV2(1, 9, 3); 

要生成的随机数的范围远大于你需要的数量时 推荐 使用 方法一
范围不是特别大且需要确保随机性时推荐使用 方法二
当你需要的随机数与范围大小相近时,方法1的性能可能会下降,因为它可能需要多次尝试才能填充Set。

相关文章:

js实现生成随机数值的数组

生成随机数值的数组 方法一&#xff1a;使用while循环和Set // min 开始数值&#xff0c; max 结束数值&#xff0c; count 数组内填充几个数值 function generateUniqueRandomNumbers(min, max, count) { let result new Set(); while (result.size < count) { let n…...

视频怎么转换成mp3格式?分享5种便捷的转换方法

在日常生活中&#xff0c;我们经常会遇到需要将视频文件中的音频提取出来&#xff0c;转换成MP3格式的情况&#xff0c;以便在手机、MP3播放器或其他设备上播放。今天&#xff0c;我将为大家介绍5种视频转MP3的方法&#xff0c;非常简单便捷&#xff0c;一起来学习下吧。 方法一…...

Reflection 70B如何革新语言模型的准确性与推理能力

在开源人工智能模型领域&#xff0c;HyperWrite 公司开发的 Reflection 70B 模型以其创新的“反射”机制成为新的重量级竞争者。这一模型旨在解决大型语言模型常见的“幻觉”问题&#xff0c;即生成不准确或虚构的信息。Reflection 70B 通过在提供最终响应之前评估和纠正自己的…...

覆盖索引是什么意思?

文章目录 Q1&#xff1a;覆盖索引是什么意思&#xff1f;覆盖索引的工作原理覆盖索引的优势覆盖索引的示例覆盖索引的使用场景覆盖索引的限制总结 Q2&#xff1a;为什么查询所涉及的所有字段都在索引中存在&#xff0c;那么数据库就无需回表&#xff1f;1. **索引本身存储了字段…...

最大间距问题

LeetCode164 最大间距 基数排序 #include <iostream> #include <vector> using namespace std;class Solution { public:int maximumGap(vector<int>& nums) {int nnums.size();if(n<2) return 0;int exp1;int Maxnums[0];vector<int> buf(n)…...

【Hadoop|MapReduce篇】Hadoop序列化概述

1. 什么是序列化 序列化就是把内存中的对象&#xff0c;转换成字节序列&#xff08;或其他数据传输协议&#xff09;以便于存储到磁盘&#xff08;持久化&#xff09;和网络传输。 反序列化就是将收到的字节序列&#xff08;或其他数据传输协议&#xff09;或者磁盘的持久化数…...

【Elasticsearch系列】Elasticsearch中的分页

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

NLTK:一个强大的自然语言处理处理Python库

我是东哥&#xff0c;一名热爱技术的自媒体创作者。今天&#xff0c;我将为大家介绍一个非常有趣且强大的Python库——NLTK。无论你是刚刚接触Python的小白&#xff0c;还是对自然语言处理&#xff08;NLP&#xff09;有些许了解的朋友&#xff0c;NLTK都是一个值得学习的工具。…...

NUUO网络视频录像机 css_parser.php 任意文件读取漏洞复现

0x01 产品简介 NUUO网络视频录像机(Network Video Recorder,简称NVR)是NUUO Inc.生产的一种专业视频监控设备,它广泛应用于零售、交通、教育、政府和银行等多个领域。能够同时管理多个IP摄像头,实现视频录制、存储、回放及远程监控等功能。它采用先进的视频处理技术,提供…...

【支付】Stripe支付通道Java对接(产品 价格 支付 查询 退款 回调)

Stripe是一家美国科技公司&#xff0c;成立于2010年&#xff0c;由爱尔兰兄弟Patrick Collison和John Collison共同创立。该公司致力于提供高效、简洁的互联网支付收款服务&#xff0c;为开发者或商家提供支付API接口或代码&#xff0c;使商家的网站、移动APP支持信用卡付款。S…...

Unity3D 小案例 像素贪吃蛇 01 蛇的移动

Unity3D 小案例 像素贪吃蛇 第一期 蛇的移动 像素贪吃蛇 今天来简单制作一个小案例&#xff0c;经典的像素贪吃蛇。 准备 首先调整一下相机的设置&#xff0c;这里使用灰色的纯色背景&#xff0c;正交视图。 接着&#xff0c;创建一个正方形&#xff0c;保存为预制体&#…...

【STM32 MCU】stm32MCUs 32-bit Arm Cortex-M

stm32MCUs 32-bit Arm Cortex-M...

html+css网页设计 旅游 雪花旅行社5个页面

htmlcss网页设计 旅游 雪花旅行社5个页面 网页作品代码简单&#xff0c;可使用任意HTML辑软件&#xff08;如&#xff1a;Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad 等任意html编辑软件进行运行及修改编辑等操作&#xff09;。 获取源码 1&#…...

vue3中的实例

实例类型 Vue2&#xff1a;每个Vue应用都是new Vue创建的一个新实例&#xff0c;创建的时候将data作为property添加到响应式系统中 vue3&#xff1a;createApp创建一个Application Instance、应用实例用来注册全局内容&#xff0c;大多数方法支持链式调用&#xff0c;返回实例…...

9.测试计划(包含笔试/面试题)

一、软件测试计划介绍 1.测试计划就是一份测试文档&#xff0c;一份描述测试工作计划的文档&#xff0c;对测试计划进行统筹安排。 2.测试计划的编写者就是测试组长&#xff0c;测试主管。 3.测试计划的查阅者&#xff1a;测试人员&#xff0c;测试主管&#xff0c;产品&#x…...

这 7 款AI应用将让你全新的iPhone 16成为电影制作的强大工具

苹果公司在周一的Glowtime发布会上揭晓了新款的iPhone 16 Pro系列。除了新加入的苹果智能功能和令人印象深刻的硬件升级外&#xff0c;它还获得了一套视频制作工具&#xff0c;让用户能够在一个几乎可以放进口袋的设备上制作整部电影。 这些升级中有一个48MP融合相机。它具有2…...

自注意力机制(self-attention)

自注意力机制&#xff08;self-attention&#xff09; 之前听过吴恩达老师的课&#xff0c;吴恩达老师CNN那一块讲的特别好&#xff0c;但是后面RNN这一部分我听的不是很明白&#xff0c;今天有看了李宏毅老师attention这部分的课&#xff0c;总结一下笔记。 self-attention …...

Nuxt3入门:过渡效果(第5节)

你好同学&#xff0c;我是沐爸&#xff0c;欢迎点赞、收藏、评论和关注。 Nuxt 利用 Vue 的 <Transition> 组件在页面和布局之间应用过渡效果。 一、页面过渡效果 你可以启用页面过渡效果&#xff0c;以便对所有页面应用自动过渡效果。 nuxt.config.js export defaul…...

【开发工具】IntelliJ IDEA插件推荐:Json Helper——让JSON处理更高效

导语&#xff1a;在Java开发过程中&#xff0c;JSON作为一种轻量级的数据交换格式&#xff0c;被广泛应用于前后端数据交互。今天&#xff0c;我要为大家介绍一款IntelliJ IDEA插件——Json Helper&#xff0c;帮助开发者更高效地处理JSON数据。 一、什么是Json Helper&#x…...

Lua垃圾回收机制

Lua垃圾回收机制 在 Lua 中&#xff0c;一共只有8种数据类型&#xff0c;分别为 nil 、boolean 、userdata 、number 、string 、 table 、 function 、 userdata 和 thread 。其中&#xff0c;只有 string table function thread 四种是以引用方式共享&#xff0c;是需要被 G…...

这个AI助手不让你教它,它自己来了解你

这个AI助手不让你教它&#xff0c;它自己来了解你OpenHuman&#xff1a;9700 Star&#xff0c;GitHub霸榜的秘密最近GitHub Trending上冒出来一个项目&#xff0c;连续霸榜多天&#xff0c;Star数蹭蹭往上涨。我点进去看了一眼&#xff0c;思路跟之前那些Agent工具完全不一样。…...

5分钟快速上手Py-ART:气象雷达数据分析的终极Python工具包

5分钟快速上手Py-ART&#xff1a;气象雷达数据分析的终极Python工具包 【免费下载链接】pyart The Python-ARM Radar Toolkit. A data model driven interactive toolkit for working with weather radar data. 项目地址: https://gitcode.com/gh_mirrors/py/pyart Py-…...

技术人的职业健康:保护身体,持续前行

技术人的职业健康&#xff1a;保护身体&#xff0c;持续前行 引言 作为一名技术人&#xff0c;我们常常长时间坐在电脑前&#xff0c;忽略了身体健康。今天就来分享一下职业健康的重要性和保护方法。 常见健康问题 颈椎问题 长时间低头看电脑会导致颈椎问题&#xff1a; 症状&a…...

鸣潮模组全面指南:解锁15项游戏增强功能

鸣潮模组全面指南&#xff1a;解锁15项游戏增强功能 【免费下载链接】wuwa-mod Wuthering Waves pak mods 项目地址: https://gitcode.com/GitHub_Trending/wu/wuwa-mod 还在为《鸣潮》中的技能冷却时间烦恼吗&#xff1f;或者觉得游戏中的资源收集过于繁琐&#xff1f;…...

网络工程师避坑指南:eNSP中配置Eth-Trunk链路聚合的5个常见错误与排查方法

网络工程师避坑指南&#xff1a;eNSP中配置Eth-Trunk链路聚合的5个常见错误与排查方法 在华为eNSP模拟器中配置Eth-Trunk链路聚合时&#xff0c;许多网络工程师都会遇到各种"翻车"现场。明明按照教程一步步操作&#xff0c;却发现带宽没有叠加、端口状态异常&#xf…...

企业级应用如何利用Taotoken的容灾与路由能力保障AI服务高可用

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 企业级应用如何利用Taotoken的容灾与路由能力保障AI服务高可用 对于将大模型能力深度集成到关键业务流程的企业应用而言&#xff0…...

北京UPS不间断电源经销商推荐名录

一、推荐公司概览中伟博信&#xff08;北京&#xff09;电子科技有限公司山特电子&#xff08;深圳&#xff09;有限公司北京办事处施耐德电气&#xff08;中国&#xff09;有限公司北京分公司科华数据股份有限公司北京分公司深圳科士达科技股份有限公司北京子公司二、北京地区…...

AnyKernel3:Android内核刷机终极指南 - 5分钟构建通用刷机包

AnyKernel3&#xff1a;Android内核刷机终极指南 - 5分钟构建通用刷机包 【免费下载链接】AnyKernel3 AnyKernel, Evolved 项目地址: https://gitcode.com/gh_mirrors/an/AnyKernel3 在Android设备定制化领域&#xff0c;内核刷机是提升性能、扩展功能的关键步骤。AnyKe…...

一键永久保存:B站缓存视频转换终极方案,让珍贵内容不再消失

一键永久保存&#xff1a;B站缓存视频转换终极方案&#xff0c;让珍贵内容不再消失 【免费下载链接】m4s-converter 一个跨平台小工具&#xff0c;将bilibili缓存的m4s格式音视频文件合并成mp4 项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter 你是否曾有过…...

Vue3组合式API进阶:深入理解和高效使用Composition API

Vue3组合式API进阶&#xff1a;深入理解和高效使用Composition API 前言 大家好&#xff0c;我是前端老炮儿&#xff01;今天咱们来聊聊Vue3组合式API的进阶用法。 你以为ref和reactive就够了&#xff1f;那你可太天真了&#xff01;Vue3的Composition API远比你想象的更强大。…...