题解 | #无重复数组#

无重复数组

http://www.nowcoder.com/practice/d2fa3632268b41df9bc417b74802ad8c


const _getUniqueNums = (start, end, n) => {
  // set 去重
  const con = new Set()
  // 生成 n 个不重复的随机数
  while (con.size < n) {
    // Math.random 生成 [0, 1) 的数字,可以将 结果 * (end - start) + start 扩大区间, + 1 是为了取到 end
    con.add(Math.floor(Math.random() * (end - start + 1) + start))
  }

  return [...con]
}
全部评论
这样值也就取不到end了
点赞 回复 分享
发布于 2022-08-22 16:31 陕西
浏览器运行会卡死 出不来
点赞 回复 分享
发布于 2023-02-12 01:15 四川
应为:con.add(Math.floor(Math.random() * (end - start + 1)) + start),start应该在取整的外面
点赞 回复 分享
发布于 2023-08-24 17:14 河北

相关推荐

11-02 09:49
已编辑
货拉拉_测试(实习员工)
热爱生活的仰泳鲈鱼求你们别卷了:没事楼主,有反转查看图片
点赞 评论 收藏
分享
评论
53
5
分享
牛客网
牛客企业服务