文章发布于:2023年2月15日
生成代码
class Random {
random() {
return Math.random();
}
uniform(a, b) {
return Math.random() * (b - a) + a;
}
randint(a, b) {
return Math.floor(Math.random() * (b - a + 1)) + a;
}
randrange(start, stop, step) {
if (arguments.length == 2) {
step = 1;
}
let length = (stop - start) / step;
return Math.floor(Math.random() * length) * step + start;
}
choice(list) {
let len = list.length;
return list[Math.floor(Math.random() * len)];
}
shuffle(list) {
let len = list.length;
let i = len;
while (i--) {
let j = Math.floor(Math.random() * (i + 1));
list[i] = [list[j], list[j] = list[i]][0]
}
return list;
}
sample(list, size) {
let len = list.length;
let result = [];
for (let i = 0; i < size; i++) {
result.push(list[Math.floor(Math.random() * len)]);
}
return result;
}
}