JS生成不重复的随机数组的简单实例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS生成不重复的随机数组的简单实例相关的知识,希望对你有一定的参考价值。

参考技术A JS生成不重复的随机数组的简单实例
//获取数组中的随机数
//HF.Math.RandomNumbers是前缀,可以自己定义,主要看逻辑代码
HF.Math.RandomNumbers
=
function
(startNum,
endNum,
count,
repeat)

var
ret
=
[];
if
(repeat)

for
(var
i
=
0;
i
<
count;
i++)

ret[i]
=
HF.Math.Random(startNum,
endNum);

return
ret;

var
tmp
=
[];
var
i
=
0;
for
(var
s
=
startNum;
s
<=
endNum;
s++)

tmp[i++]
=
s;

var
l
=
tmp.length;
for
(i
=
0;
i
<
count;
i++)

ret[i]
=
HF.Array.Remove(tmp,
HF.Math.Random(0,
--l));

return
ret;

以上这篇JS生成不重复的随机数组的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

mpi生成随机数组并进行排序

参考技术A mpi生成随机数组并进行排序:

它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。

这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。

按照我的理解其实很简单,比较两个相邻数据的大小,如果满足大小关系,则数据不变动,否者将他们的位置互换,所以,一次冒泡完毕之后,至少一个数据已经移动到它该待的位置,所以像对n个数据排序,那么只需要进行n(或者n-1)次冒泡即可得到最终的排序结果。

我们来举个例子,现在有一组数据:6,5,4,3,2,1,我们现在需要将这些数据从小到大排序。
插入排序(Insertion sort)是一种简单直观且稳定的排序算法。如果有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到一种新的排序方法——插入排序法,插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据。

插入排序的基本思想是:每步将一个待排序的记录,按其关键码值的大小插入前面已经排序的文件中适当位置上,直到全部插入完为止。

随机排序: 第一次:18395 ms 第二次:17758 ms 第三次:17792 ms插入排序: 第一次:1098 ms 第二次:1124 ms 第三次:1093 ms选择排序: 第一次:5776 ms 第二次:6432 ms 第三次:5367 ms

以上是关于JS生成不重复的随机数组的简单实例的主要内容,如果未能解决你的问题,请参考以下文章

js如何生成指定范围内的随机数

js如何生成指定范围内的随机数

生成不重复的随机数

js从数组中随机获取n个不重复的数据

JS中,输出1-10之间的随机整数,用Math.random()咋搞呢

创建的每个实例的随机颜色生成器和 RGB [重复]