1. knuth-shuffle-seeded
The Fisher-Yates (aka Knuth) shuffle for Node.js, with seeding support
knuth-shuffle-seeded
Package: knuth-shuffle-seeded
Created by: TimothyGu
Last modified: Sun, 19 Jun 2022 09:08:34 GMT
Version: 1.0.6
License: Apache-2.0
Downloads: 4,231,302
Repository: https://github.com/TimothyGu/knuth-shuffle-seeded

Install

npm install knuth-shuffle-seeded
yarn add knuth-shuffle-seeded

knuth-shuffle-seeded

npm
Build Status
Dependencies
devDependencies
Code Coverage

The Fisher-Yates (aka Knuth) shuffle for the browser and Node.js, with seeds
support using seed-random.

This project is initially forked from
coolaj86/knuth-shuffle, but is
extended so that it is possible to specify a seed to use in the shuffling, to
ensure test reproducability.

Online demo: https://timothygu.github.io/knuth-shuffle-seeded/

Getting Started

Node.js

Installing:

 npm install knuth-shuffle-seeded

The Browser

Put browser.js into your directory for JavaScripts. Then take a look at
index.html.

You can also visit the page at
https://timothygu.github.io/knuth-shuffle-seeded/.

API

 shuffle(inputArray[, seed])

See example.js for more examples.

Why not contribute to the original repo?

I have considered that, but the introduction of an npm dependency makes it
necessary to use Browserify to generate a browser-compatible JavaScript file,
which is too far away from the simple approach of knuth-shuffle.

Authors

  • AJ O'Neal (@coolaj86) -- initial author
  • Timothy Gu (@TimothyGu) -- seeding support

License

Copyright 2013 AJ O'Neal

Copyright 2015 Tiancheng "Timothy" Gu

Licensed under the Apache License, Version 2.0 (the "License"); you may not
use this project except in compliance with the License. You may obtain a copy
of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code