functional queue

This commit is contained in:
2022-01-31 12:46:44 -06:00
parent 588365e558
commit aa0fffdc94
10 changed files with 272 additions and 37 deletions

24
dist/util.js vendored Normal file
View File

@@ -0,0 +1,24 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.shuffle = void 0;
/**
* shuffles an array
* https://stackoverflow.com/a/2450976/2856416
* @param array an array
* @returns an array but shuffled
*/
function shuffle(array) {
let currentIndex = array.length, randomIndex;
// While there remain elements to shuffle...
while (currentIndex != 0) {
// Pick a remaining element...
randomIndex = Math.floor(Math.random() * currentIndex);
currentIndex--;
// And swap it with the current element.
[array[currentIndex], array[randomIndex]] = [
array[randomIndex], array[currentIndex]
];
}
return array;
}
exports.shuffle = shuffle;