All Projects → jonhoo → rust-zipf

jonhoo / rust-zipf

Licence: Apache-2.0 license
Rust implementation of a fast, bounded, Zipf-distributed random number generator

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to rust-zipf

randomgen
Numpy-compatible bit generators and add some random variate distributions missing from NumPy.
Stars: ✭ 82 (+241.67%)
Mutual labels:  random-number-generators, random-number-distributions
RNG
A simple state-of-the-art C++ random number generator
Stars: ✭ 19 (-20.83%)
Mutual labels:  random-number-generators
CryptoManana
An Advanced PHP Cryptography Framework
Stars: ✭ 15 (-37.5%)
Mutual labels:  random-number-generators
datagen
Java lib that generates random data (numbers, strings, dates) - mostly to facilitate Randomized Testing.
Stars: ✭ 56 (+133.33%)
Mutual labels:  random-number-generators
alea
Define and compose random variables
Stars: ✭ 36 (+50%)
Mutual labels:  random-number-distributions
RandLib
🚀 A library designed to facilitate work with probability, statistics and stochastic calculus
Stars: ✭ 64 (+166.67%)
Mutual labels:  random-number-generators
prvhash
PRVHASH - Pseudo-Random-Value Hash. Hash functions, PRNG with unlimited period, randomness extractor. (Codename Gradilac/Градилак)
Stars: ✭ 194 (+708.33%)
Mutual labels:  random-number-generators
fake-numbers
Generate fake, valid numbers. Check if a number is valid. Support a lot of different numbers: Credit card, EAN, ISBN, RTN, VIN, etc.
Stars: ✭ 51 (+112.5%)
Mutual labels:  random-number-generators
schrodingers-rng
Creates random numbers using a webcam attached to a smoke alarm
Stars: ✭ 12 (-50%)
Mutual labels:  random-number-generators
jRand
A Java library to generate random data for all sorts of things. Java random data faker
Stars: ✭ 27 (+12.5%)
Mutual labels:  random-number-generators
NAGPythonExamples
Examples and demos showing how to call functions from the NAG Library for Python
Stars: ✭ 46 (+91.67%)
Mutual labels:  random-number-generators
javascript-strong-password-generator
JavaScript Strong Password Generator: based on Jeff Atwood's Post "Password Rules Are Bullshit".
Stars: ✭ 21 (-12.5%)
Mutual labels:  random-number-generators
DelphiEncryptionCompendium
Cryptographic library for Embarcadero Delphi and potentially for FPC as well
Stars: ✭ 181 (+654.17%)
Mutual labels:  random-number-generators

rust-zipf

Crates.io Documentation Build Status Codecov Dependency status

Rust implementation of a fast, discrete, bounded, Zipf-distributed random number generator. Compared to the implementation provided by randomkit (which binds to NumPy's fork of RandomKit), this crate is approximately twice as fast:

$ cargo +nightly bench
test tests::bench_randomkit ... bench:         339 ns/iter (+/- 18)
test tests::bench_us        ... bench:          68 ns/iter (+/- 1)
test tests::bench_threadrng ... bench:          11 ns/iter (+/- 0)

It is also both driven by, and provides, a Rust random number generator.

This implementation is effectively a direct port of Apache Common's RejectionInversionZipfSampler, written in Java. It is based on the method described by Wolfgang Hörmann and Gerhard Derflinger in Rejection-inversion to generate variates from monotone discrete distributions from ACM Transactions on Modeling and Computer Simulation (TOMACS) 6.3 (1996).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].