关于数组随机不重复的思路

例如双色球的红色举例;

首先知道数组的长度 6个;利用循环里的数组长度小于6进行循环;

//封装产生随机数的函数

function randow(n,m){

  return parsentInt(Math.random() * (m-n) + n)

}

//定义一个空数组

var arr=[];

//封装一个判断新随机数是否于之前重复;

function arrinfo(num,arr){

  for(var i=0;i<arr.length;i++){

    if(num == arr[i]){

      retutn flase;

    }

  }

    return ture;

}

//产生随机数并添加到数组里;判断条件,,数组的长度

while(arr.length<6){//  产生的随机数 1-34之间;

var num = randow(1,34)//将产生的随机数于数组传入判断重复的函数内if(arrinfo(num,arr)){

//如果没有重复则添加到数组内;于重复则不添加  如果数组长度达不到6则会一直执行下去;  arr.push(num)}
}
时间: 2024-10-07 12:08:02

关于数组随机不重复的思路的相关文章

获取一个1~50的随机不重复数组

// 获取一个1~50的随机不重复数组// Math.ceil()用于向上取整 Math.floor()用于向下取整 Math.round()用于四舍五入取整数var arr = [];var number = 50;for(var i=1;i<=number;i++){ arr.push(i);}console.log(arr);var result = [];for(var j=number-1;j>=0;j--){ var rand = Math.ceil(Math.random()*j

一起来刷《剑指Offer》——不修改数组找出重复的数字(思路及Python实现)

数组中重复的数字 在上一篇博客中<剑指Offer>-- 题目一:找出数组中重复的数字(Python多种方法实现)中,其实能发现这类题目的关键就是一边遍历数组一边查满足条件的元素. 然后我们在博客用最复杂的方式学会数组(Python实现动态数组)这篇博客中介绍了数组这一结构的本质,并自己动手实现了一个动态数组. 今天我们介绍一下另一道来自<剑指Offer>的关于数组的面试题--不修改数组找出重复的数字. 不修改数组找出重复的数字 题目二:不修改数组找出重复的数字 给定一个长度为 n+

如何消除一个数组里面的重复元素?(面试题目)

第一眼看到这个题目的时候,思路是,找出数组中的重复元素,然后删除掉即可.下面为具体代码实现: var data = ['blue', 'red', 'green', 'blue']; function UniqueData(data) { data = data.sort(); for (var i = 0; i < data.length; i++) { if (data[i] === data[i + 1]) { data.splice(i, 1); } } return data; } U

【LeetCode-面试算法经典-Java实现】【026-Remove Duplicates from Sorted Array(删除排序数组中的重复元素)】

[026-Remove Duplicates from Sorted Array(删除排序数组中的重复元素)] [LeetCode-面试算法经典-Java实现][所有题目目录索引] 原题 Given a sorted array, remove the duplicates in place such that each element appear only once and return the new length. Do not allocate extra space for anot

[LeetCode] Remove Duplicates from Sorted Array 有序数组中去除重复项

Given a sorted array, remove the duplicates in place such that each element appear only once and return the new length. Do not allocate extra space for another array, you must do this in place with constant memory. For example,Given input array A = [

javascript 判断数组中的重复内容的两种方法 by FungLeo

javascript 判断数组中的重复内容的两种方法 by FungLeo 前言 一般,我们可能会给数组去重,这个操作并不复杂,执行一个循环就是了.现在,我要做的是,判断数组中是否有重复的内容,如果有,返回 true 否则,返回 false. 思路 把数组变成字符串 循环原数组,拿每一个字段和这个字符串进行比对,看是否有重复 如何拿A字符串和B字符串进行对比,并且要求判断出B字符串中包含过个A字符串呢? 方法一 indexOf() 和 lastIndexOf() 对比法. 首先,我们构建代码:

[LeetCode] Remove Duplicates from Sorted Array II 有序数组中去除重复项之二

Follow up for "Remove Duplicates":What if duplicates are allowed at most twice? For example,Given sorted array A = [1,1,1,2,2,3], Your function should return length = 5, and A is now [1,1,2,2,3]. 这道题是之前那道Remove Duplicates from Sorted Array 有序数组中

9.10扩展性与存储限制(三)——若只有4KB内存可用,该如何打印数组中所有重复的元素

/** * 功能:给定一个数组,包含1到N的整数,N最大为32000,数组可能含有重复的值,且N的取值不定. * 若只有4KB内存可用,该如何打印数组中所有重复的元素. */ /** * 思路:4KB最多殉职8*4*2^10个比特.比32000大.创建含有32000个比特的位向量,其中每个比特代表一个整数. * 遇到重复元素,打印出来. * @param array */ public static void checkDuplicates(int[] array){ BitSet bs=new

LintCode(101)删除排序数组中的重复数字 II

题目 跟进"删除重复数字": 如果可以允许出现两次重复将如何处理? 您在真实的面试中是否遇到过这个题? Yes 样例 给出数组A =[1,1,1,2,2,3],你的函数应该返回长度5,此时A=[1,1,2,2,3]. 分析 与上题思路相同,只需要增加一个记录元素出现次数的变量即可,限制最多出现2次. Python代码 class Solution: """ @param A: a list of integers @return an integer &q