-
rand
Random number generators and other randomness functionality
-
fastrand
fast random number generator
-
crc
support of various standards
-
rustfft
High-performance FFT library written in pure Rust
-
priority-queue
Priority Queue implemented as a heap with a function to efficiently change the priority of an item
-
fnv
Fowler–Noll–Vo hash function
-
bytecount
count occurrences of a given byte, or the number of UTF-8 code points, in a byte slice, fast
-
xxhash-rust
xxhash
-
ahash
non-cryptographic hash function using AES-NI for high performance
-
rand_chacha
ChaCha random number generator
-
sprs
sparse matrix library
-
stacker
stack growth library useful when implementing deeply recursive algorithms that may accidentally blow the stack
-
nanorand
tiny, fast, zero-dep library for random number generation
-
pathfinding
flow, and graph algorithms
-
highway
Native Rust port of Google's HighwayHash, which makes use of SIMD instructions for a fast and strong hash function
-
ulid
Universally Unique Lexicographically Sortable Identifier implementation
-
rstar
R*-tree library for the Rust ecosystem
-
strsim
Implementations of string similarity metrics. Includes Hamming, Levenshtein, OSA, Damerau-Levenshtein, Jaro, Jaro-Winkler, and Sørensen-Dice.
-
twox-hash
XXHash and XXH3 algorithms
-
rustc-hash
speed, non-cryptographic hash used in rustc
-
crc-any
compute CRC values by providing the length of bits, expression, reflection, an initial value and a final xor value. It has many built-in CRC functions.
-
ndarray-linalg
Linear algebra package for rust-ndarray using LAPACK
-
bellperson
zk-SNARK library
-
blstrs
High performance implementation of BLS12 381
-
passwords
useful tools to generate multiple readable passwords, as well as analyze and score them
-
ena
Union-find, congruence closure, and other unification code. Based on code from rustc.
-
fastcdc
(content defined chunking) in pure Rust
-
GSL
binding for the GSL (the GNU scientific library)
-
extendr-api
Safe and user friendly bindings to the R programming language
-
wildmatch
string matching with questionmark and star wildcard operator
-
nu-command
Nushell's built-in commands
-
md5
package provides the MD5 hash function
-
gtk4-sys
FFI bindings of GTK 4
-
kiddo
high-performance, flexible, ergonomic k-d tree library. Ideal for geo- and astro- nearest-neighbour and k-nearest-neighbor queries
-
levenshtein
algorithm
-
group
Elliptic curve group traits and utilities
-
slice-group-by
Iterators over groups in slices and strs
-
arrow-data
Array data abstractions for Apache Arrow
-
streaming-iterator
Streaming iterators
-
crc32c
Safe implementation for hardware accelerated CRC32C instructions with software fallback
-
fallible-iterator
Fallible iterator traits
-
robust
adaptive floating-point predicates for computational geometry
-
realfft
Real-to-complex forward FFT and complex-to-real inverse FFT for Rust
-
arrow-ord
Ordering kernels for arrow arrays
-
rand_pcg
Selected PCG random number generators
-
dissimilar
Diff library with semantic cleanup, based on Google's diff-match-patch
-
oorandom
tiny, robust PRNG implementation
-
ff
building and interfacing with finite fields
-
xorf
implementing xor filters - faster and smaller than bloom and cuckoo filters
-
strength_reduce
Faster integer division and modulus operations
-
fallible_collections
adds fallible allocation api to std collections
-
z3
High-level rust bindings for the Z3 SMT solver from Microsoft Research
-
topological-sort
Performs topological sorting
-
rand_distr
Sampling from random number distributions
-
icu_pattern
ICU pattern utilities
-
alphanumeric-sort
can help you sort order for files and folders whose names contain numerals
-
broccoli
broadphase collision detection algorithms
-
sgp4
pure Rust implementation of the SGP4 algorithm for satellite propagation
-
type_constructor
Fundamental data types and type constructors, like Single, Pair, Many
-
wkt
read/write support for well-known text (WKT)
-
tantivy-fst
tantivy-specific fork from the fst crate from Burntsushi. (Please use the fst crate instead.)
-
adler32
Minimal Adler32 implementation for Rust
-
byte-slice-cast
Safely cast bytes slices from/to slices of built-in fundamental numeric types
-
medians
Median, Statistical Measures, Mathematics, Statistics
-
arrow-buffer
Buffer abstractions for Apache Arrow
-
k
kinematics
-
special
package provides special functions
-
r3bl_rs_utils
Async Redux library, TUI framework, and useful types
-
gcd
Calculate the greatest common divisor
-
ddo
generic and efficient framework for MDD-based optimization
-
murmur3
hash
-
cap-rand
Capability-based random number generators
-
oci-distribution
OCI implementation in Rust
-
simd-adler32
SIMD-accelerated Adler-32 hash algorithm implementation
-
binary-heap-plus
Enhanced version of std::collections::BinaryHeap that supports max, min, and custom-order heaps
-
bevy_rapier2d
2-dimensional physics engine in Rust, official Bevy plugin
-
graph
high-performant graph algorithms
-
hnsw_rs
Ann based on Hierarchical Navigable Small World Graphs from Yu.A. Malkov and D.A Yashunin
-
vek
Generic 2D-3D math swiss army knife for game engines, with SIMD support and focus on convenience
-
integer-sqrt
integer square root algorithm for primitive rust types
-
rand_regex
Generates random strings and byte strings matching a regex
-
pv_rhino
bindings for Picovoice's Rhino library
-
zipf
fast generator of discrete, bounded Zipf-distributed random numbers
-
flo_curves
manipulating Bezier curves
-
genetic_algorithms
solving genetic algorithm problems
-
opis
rational number and matrix arithmetic
-
cdshealpix
HEALPix tesselation
-
rustfst-ffi
constructing, combining, optimizing, and searching weighted finite-state transducers (FSTs). Rustfst-ffi provides C interfaces of the Rust library
-
image_hasher
that provides perceptual hashing and difference calculation for images
-
transpose
transposing multi-dimensional data
-
differ
finding the differences between two sequences
-
ph
data structures based on perfect hashing
-
ndarray-rand
Constructors for randomized arrays.
rand
integration forndarray
. -
advent-of-code
Solutions to Advent of Code
-
hexf-parse
Parses hexadecimal floats (see also hexf)
-
skillratings
Calculate a player's skill rating using algorithms like Elo, Glicko, Glicko-2, TrueSkill and many more
-
clingo
idiomatic bindings to the clingo library
-
probability
package provides a probability-theory toolbox
-
arrayfire
high performance software library for parallel computing with an easy-to-use API. Its array based function set makes parallel programming simple. ArrayFire's multiple backends (CUDA…
-
gix-negotiate
gitoxide project implementing negotiation algorithms
-
rust-spice
WOW! The complete NASA/NAIF Spice toolkit is actually usable on Rust
-
reed-solomon-novelpoly
reed solomon code / encoder / decoder with complexity
O(n lg(n))
-
timely
low-latency data-parallel dataflow system in Rust
-
hime_redist
Redistributable runtime library for parsers generated with Hime (LR, RNGLR)
-
crunch
packer for cramming lots of rectangles into a larger one, designed primarily with sprite packing in mind
-
radius2
fast symbolic execution framework using r2
-
counting_sort
Counting sort implementation for Iterators
-
distances
Fast and generic distance functions for high-dimensional data
-
seahash
blazingly fast, portable hash function with proven statistical guarantees
-
smawk
Functions for finding row-minima in a totally monotone matrix
-
extendhash
Hash Extender
-
resiter
Helper crate for handling iterators over result
-
kdtree
K-dimensional tree in Rust for fast geospatial indexing and nearest neighbors lookup
-
bao
BLAKE3 verified streaming
-
sliding_features
Modular sliding window with various signal processing functions and technical indicators
-
differential-dataflow
incremental data-parallel dataflow platform
-
argminmax
(argmin & argmax in 1 function) with SIMD for floats and integers
-
ids_service
that allows to generate unique Ids
-
lerp
Generic linear interpolation and extrapolation, automatically implemented for a variety of numeric types
-
poi
pragmatic point-free theorem prover assistant
-
linfa-datasets
Collection of small datasets for Linfa
-
naive_opt
optimized naive string-search algorithm
-
unit-conversions
Various units of measurement conversions
-
sets
Generic vectors as sets. Efficiently sorting, merging, ranking, searching, reversing, intersecting, etc.
-
subset_sum
Solves subset sum problem and returns a set of decomposed integers. It also can match corresponding numbers from two vectors and be used for Account reconciliation.
-
spa
Solar Position Algorithm module (SPA) for Rust calculates the sunrise-sunset and azimuth and zenith-angle for specific geo-position and time (UTC); for example for solar-panel-alignment or automotive
-
earcutr
port of MapBox's earcut triangulation code to Rust language
-
line-span
Find line ranges and jump between next and previous lines
-
rattler_solve
solve conda environments
-
fuzzyhash
Pure Rust fuzzy hash implementation
-
ssri
Various utilities for handling Subresource Integrity
-
smallmap
Small byte-sized generic key-value map type
-
memx
memory functions like libc memcmp(), memchr(), memmem(), memcpy(), memset()
-
linestring
line string toolbox
-
rithm
Arbitrary precision arithmetic
-
sophia_inmem
toolkit for RDF and Linked Data - In-memory Graph and Dataset implementations
-
instant-distance
Fast minimal implementation of HNSW maps for approximate nearest neighbors searches
-
knossos
generating and rendering mazes
-
svd-rs
CMSIS-SVD base structures
-
noodles-cram
CRAM format reader and writer
-
nucleo
plug and play high performance fuzzy matcher
-
rand_mt
Reference Mersenne Twister random number generators
-
openblas-build
package provides a build helper for OpenBLAS
-
levenberg-marquardt
algorithm built on top of nalgebra
-
backon
Retry with backoff without effort
-
probminhash
Minhash algorithms for weighted Jaccard index
-
kd-tree
k-dimensional tree
-
triple_accel
edit distance routines accelerated using SIMD. Supports fast Hamming, Levenshtein, restricted Damerau-Levenshtein, etc. distance calculations and string search.
-
scru128
SCRU128: Sortable, Clock and Random number-based Unique identifier
-
toodee
lightweight 2D wrapper around a Vec
-
dfp-number-sys
bindings for Intel® Decimal Floating-Point Math Library
-
treediff
Find the difference between arbitrary data structures
-
partial_sort
version of std::partial_sort
-
fractional_index
fractional indexing
-
reed-solomon-simd
Reed-Solomon coding with O(n log n) complexity. Leverages AVX2 or SSSE3 on x86(-64).
-
yada
double-array trie library aiming for fast search and compact data representation
-
ra-ap-rustc_index
Automatically published version of the package
rustc_index
in the rust-lang/rust repository from commit 390e3c8b6615afb4f0b9bb2c3db3ad033ac75d78 The publishing script for this crate lives at:… -
cam-geom
Geometric models of cameras for photogrammetry
-
app_units
Servo app units type (Au)
-
boostvoronoi
Boost voronoi ported to 100% rust
-
halfbrown
Multi backend HashMap for higher performance on different key space sizes
-
surgeshaper-digi
surge synthesizer -- digital waveshaper
-
merkle_hash
Finds the hashes of all files and directories in a directory tree
-
gdsl
graph data-structure library including graph containers, connected node strutures and efficient algorithms on those structures. Nodes are independent of a graph container and can be used as connected smart pointers
-
tinymt
64/32 - a lightweight variant of Mersenne Twister PRNG
-
mergable
user-friendly and efficient CRDTs
-
boyer-moore-magiclen
fast string search algorithm implemented in Rust
-
geo-clipper
Boolean operations on polygons
-
avltriee
Customized version of AVLTree library.Process the same value in the third branch. One data is immovable from one row, and positional relationships such as left, right, and parent are all referenced by row numbers…
-
simsearch
lightweight fuzzy search engine that works in memory, searching for similar strings (a pun here)
-
biodiff
Compare binary files using sequence alignment
-
qr2term
Stupidly simple Rust crate to render a QR code in the terminal
-
rs-wordle-solver
solving Wordle-style puzzles. It provides multiple guessing algorithms, as well as building blocks for implementing your own Wordle solving algorithms.
-
bit-iter
Iterate forward or backwards over the positions of set bits in a word
-
svdlibrs
port of LAS2 from SVDLIBC
-
ragged-buffer
Efficient RaggedBuffer datatype that implements 3D arrays with variable-length 2nd dimension
-
weighted_rand
weighted random sampling crate using Walker's Alias Method
-
murmurhash32
murmurhash32_2
-
static_aabb2d_index
Fast static spatial index data structure for 2D axis aligned bounding boxes
-
randomize
Randomization routines
-
muldiv
trait for numeric types to perform combined multiplication and division with overflow protection
-
delaunator
very fast 2D Delaunay triangulation library
-
graph-algorithms
5 graph algorithms - DIJKSTRA'S, BFS, DFS, KOSARAJU'S and BELLMAN FORD ALGORITHM
-
numext-fixed-uint
Fixed-size uint types
-
stringmetrics
approximate string matching
-
metaheuristics-nature
collection of nature-inspired meta-heuristic algorithms
-
dmsort
Fast adaptive sorting for when most of your data is already in order. dmsort can be 2-5 times faster than Rust's default sort when more than 80% of the elements are already in order
-
mpchash
Multi-probe consistent hashing algorithm implementation
-
jubjub
elliptic curve group
-
is_prime
Fast arbitrary length prime number checker using the Miller-Rabin primality test algorithm
-
svd-encoder
CMSIS-SVD file encoder
-
hypernonsense
Using Locality Sensitive hashing to find the nearest points to a query point in extremely high dimensional space
-
starlark_map
Map implementation with starlark-rust specific optimizations
-
annembed
dimension reduction à la Umap
-
rurel
Flexible, reusable reinforcement learning (Q learning) implementation
-
highs
Safe rust bindings for the HiGHS linear programming solver. See http://highs.dev.
-
pi_atom
global thread safe atomic string pool reduces the memory occupation of the same string and is also used for HashMap keys
-
at-commands
AT Commands builder and parser for Rust #![no_std]
-
typed-sled
Sled with types instead of bytes
-
hyperloglog-rs
HyperLogLog trying to be parsimonious with memory
-
blitzar
High-Level Rust wrapper for the blitzar-sys crate
-
random-access-memory
Continuously read and write to memory using random offsets and lengths
-
list-fn
generic lazy list
-
ndarray-slice
Fast and robust slice-based algorithms (e.g., sorting, selection, search) for non-contiguous (sub)views into n-dimensional arrays
-
polylog
polylogarithms
-
edit-distance
Levenshtein edit distance between strings, a measure for similarity
-
easyfft
providing an easy FFT API for arrays and slices
-
permutator
Get a lexicographic cartesian product and lexicographic permutation at any specific index from data. Generate complete lexicographic cartesian product from single or multiple set of data…
-
random_word
Efficient functions for generating random words in many languages
-
fastcdc-alt
FastCDC (content defined chunking) implementation in pure Rust with an alternative API to the original crate
-
crczoo
CRC Zoo: A collection of Cyclic Redundancy Check (CRC) algorithms
-
graph_builder
building block for high-performant graph algorithms
-
zeros
-
polynomial
manipulating polynomials
-
itermore
🤸♀️ More iterator adaptors
-
voracious_radix_sort
State of the art radix sort algorithms. Single thread and multi thread versions.
-
cbor-data
using CBOR as in-memory representation for working with dynamically shaped data
-
stack-graphs
Name binding for arbitrary programming languages
-
slice-by-8
HUD Software's Rust improved implementation of the Intel Slice-By-8 algorithm
-
easy_color
very simple and easy-to-use color conversion tool
-
dwrote
Lightweight binding to DirectWrite
-
canadensis_dsdl_frontend
Compiler front-end for the Cyphal Data Structure Description Language
-
hashring
minimal implementation of consistent hashing
-
is_sorted
Iterator sorted?
-
arpfloat
Arbitrary-precision floating point library
-
tiny_sort
Binary-size optimized stable and unstable sorts
-
dogear
merging bookmark trees
-
id_tree_layout
visualize trees from the 'id_tree' crate
-
rust_cascade
bloom filter cascade implementation in Rust
-
math_adapter
Collection of math adapters to decouple your application from math libraries' implementations and to provide both inter-libraries compatibility and affordable exchangeability
-
memory-db
In-memory implementation of hash-db, useful for tests
-
json-proof-token
based on the new JOSE Working Group draft specifications: JSON Web Proof (JWP), JSON Proof Token (JPT) and JSON Proof Algorithm (JPA)
-
dbsp
Continuous streaming analytics engine
-
dagga
scheduling directed acyclic graphs of nodes that create, read, write and consume resources
-
zarray
Cache-optimized 2D and 3D arrays using Morton order (aka Z-order) Z-indexed storage, with a convenient API for common 2D and 3D access patterns. Use of zarray in place of a Vec of Vecs often improves performance…
-
board-game
board game abstraction and generic utilities around it
-
buffer-redux
Drop-in replacements for buffered I/O in
std::io
with extra features -
vrp-pragmatic
extension logic for solving rich VRP
-
adler
clean-room implementation of the Adler-32 checksum
-
iban
parsing library
-
linregress
ordinary least squared linear regression with some basic statistics
-
opensimplex2
Port of OpenSimplex2
-
autodiff
automatic differentiation library
-
rust_dynamic
Support for dynamically-typed values in run-time
-
rdst
flexible parallel unstable radix sort that supports sorting by any arbitrarily defined sequence of bytes
-
natord
Natural ordering for Rust
-
random-pick
Pick an element from a slice randomly by given weights
-
hora-new
Hora Search Everywhere
-
metrohash
high quality, high performance hash algorithm
-
fluent-comparisons
Boost readability by writing multicomparison expressions like
if any_of!({a,b,c}>=5) {...}
while keeping the benefits of hand-written code -
logicng
Creating, Manipulating, and Solving Boolean Formulas
-
rustronomy-watershed
pure-rust implementation of the segmenting and merging watershed algorithms
-
poker
speedy poker hand evaluation
-
lib-sokoban
Sokoban: compact, efficient data structures packed into contiguous byte arrays
-
rattler_libsolv_c
Bindings for libsolv
-
rand-unique
no-std crate for generating random sequences of unique integers in O(1) time
-
toffee
Get command to run to run specific test in a file
-
diffmatchpatch
Rewrite of diff-match-patch in Rust
-
rev_lines
Iterator for reading files line by line with a buffer in reverse
-
fitsrs
FITS image parser
-
radiate
Parallel genetic programming engine capable of evolving solutions for supervised, unsupervised, and general reinforcement learning problems
-
cnccoder
generating gcode operations targeted for GRBL controled cnc machines, and also generates camotics projects for simulation
-
ranges
generic alternative to core/std ranges, set-operations to work with them and a range set that can efficiently store them with the least amount of memory possible
-
kube_quantity
adding arithmetic operations to the Quantity type from the k8s-openapi crate
-
cheap-ruler
port of cheap-ruler, a collection of very fast approximations to common geodesic measurements
-
voronator
Implements the Voronoi diagram construction as a dual of the Delaunay triangulation for a set of points and the construction of a centroidal tesselation of a Delaunay triangulation
-
fst
finite state transducers to compactly represents sets or maps of many strings (> 1 billion is possible)
-
travelling_salesman
Travelling Salesman Problem Solvers
-
rs-graph
graph algorithms and combinatorial optimization
-
sequence-generator-rust
Customizable 64-bit unique distributed IDs sequence generator based on Twitter's ID (snowflake). Build in Rust
-
timsort
modified MergeSort used in Python and Java
-
guid-create
helper for creating GUIDs
-
liba
algorithm library based on C/C++ language
-
pso-rs
Particle Swarm Optimization implementation in Rust
-
ms_toollib
Algorithms for Minesweeper
-
extsort-iter
external sorting for all types for all iterators
-
regex-lite
lightweight regex engine that optimizes for binary size and compilation time
-
dynalgo
tiny library designed to produce animated SVG images that can illustrate graph algorithms in action
-
rlifesrc-lib
Game of Life pattern searcher (library)
-
cobyla
optimizer for Rust
-
crcxx
computes CRC-8/16/32/64/128 using various methods. Included catalog of CRC parameters simplify usage.
-
kewb
manipulating and solving a 3x3 Rubik's cube with Kociemba's two phase algorithm
-
genevo
building blocks to run simulations of optimization and search problems using genetic algorithms (GA). Execute genetic algorithm (GA) simulations in a customizable and extensible way
-
shardtree
space-efficient Merkle tree with witnessing of marked leaves, checkpointing & state restoration
-
thincollections
Alternative implementations for vector, map and set that are faster/smaller for some use cases
-
lctree
Link-Cut-Tree: self-balancing data structure to maintain a forest of rooted trees
-
pcg_rand
PCG family of random number generators in pure Rust
-
g2poly
Primitive implementation of polynomials over the field GF(2)
-
genetic_algorithm
genetic algorithm implementation
-
test-data-generation
light-weight library that analyzes sample data to build algorithms and generates realistic test data
-
ramp
high-performance multiple-precision arithmetic library
-
chronologic
Time constraint reasoning (scheduling...)
-
fixed2float
Fixed point to floating point conversion utility
-
chalk-engine
Core trait engine from Chalk project
-
stream-more
Stream utilities for Rust
-
jellyfish
Approximate and phonetic matching of strings
-
rln
APIs to manage, compute and verify zkSNARK proofs and RLN primitives
-
collate
Traits and a data structure to support collation and bisection
-
editdistancek
Fast algorithm for computing edit distance
-
bash-builtins
implement loadable builtins for bash
-
petal-neighbors
Nearest neighbor search algorithms including a ball tree and a vantage point tree
-
what3words
client for What3Words v3 API, allowing you to convert coordinates to three-word addresses and vice versa
-
sepax2d
safe crate for finding and resolving collisions of 2D convex shapes using the Separating Axis Theorem
-
num_convert
Type converting library, conversions integers by overflow addition, supports generics types
-
nuts-rs
Sample from unnormalized densities using Hamiltonian MCMC
-
overlord
consensus procotol
-
path-finding-lib
variety of path finding and graph operations. Work in progress.
-
hpke-rs-crypto
Traits and types for HPKE crypto backends
-
dmp
high-performance library in that manipulates plain text
-
rustmex
Rustmex: providing convenient Rust bindings to Matlab MEX API's
-
pasture-algorithms
Point cloud algorithms for pasture
-
qip-iterators
Iterators for tensor product matrix multiplication
-
portmatching
Fast Graph Matching for Port Graphs
-
random
package provides sources of randomness
-
sortby
adds convenient sort functions for Iterators
-
wavefc
home-grown implementation of the Wave Function Collapse algorithm
-
time_series_generator
Generate various timeseries of given length, some randomly sampled
-
cuid
ipmlementation of CUID protocol in rust
-
geos-sys
GEOS C API bindings
-
rustsat
aims to provide implementations of elements commonly used in the development on software in the area of satisfiability solving. The focus of the library is to provide as much ease of use without giving up on performance.
-
fast_paths
Fast shortest path calculations on directed graphs made possible by pre-processing the graph using Contraction Hierarchies
-
movavg
Generic Moving Average calculation
-
cast
Ergonomic, checked cast functions for primitive types
-
flowmium
workflow orchestrator that use Kubernetes
-
deranged
Ranged integers
-
oxigen
Fast, parallel, extensible and adaptable genetic algorithm library
-
times
Timing Benchmark, Repeated Runs, with Statistics
-
bitm
bit and bitmap (bit vector) manipulation
-
human-sort
Human sort (natural sort) implementation
-
rsgenetic
providing genetic algorithm execution
-
mhgl
Matts HyperGraph Library (MHGL). A straightforward library for hypergraph datastructures. Not a database.
-
graus-db
high-performance, thread-safe key-value embedded data store
-
out
fast min and max functionality for collections
-
mozilla/sync-guid
Firefox Application Services
-
pi_spatial
sparial octtree quadtree
-
levenshtein-diff
Generic implementation of Levenshtein's algorithm that also allows you to generate the edits required to convert a source sequence to a target, and apply them to the source sequence to regenerate the target
-
elipdotter
Embeddable full text search engine
-
rip_shuffle
Fast sequential and parallel in-place shuffling algorithms
-
requests_rs
sending GET/POST requests and parsing jsons, included with an async file downloader. Intended for mostly small projects which need to make quick GET/POST requests or download files.
-
norms
collection of distance metrics on strings
-
four-char-code
string of 4 ascii chars represented by an u32
-
native-pkcs11-traits
Traits for implementing and interactive with native-pkcs11 module backends
-
changeforest
Random Forests for Change Point Detection
-
flat_spatial
Flat spatial partitionning algorithms and data structures
-
screwsat
condlict driven clause learning sat solver
-
b4s
Binary Search Single Sorted String: Perform binary search on a single, delimited string slice of sorted but unevenly sized substrings
-
multiexp
Multiexponentation algorithms for ff/group
-
sudoku-solver
backtracking algorithm for solving sudoku
-
raphy
graph data structure library
-
buf-min
Minimal utf-8 safe buffer traits
-
turborand
Fast random number generators
-
localsearch
Local Search based Metaheuristics
-
uniset
hierarchical, growable bit set with support for in-place atomic operations
-
UUID_extend
Extension of uuid generation based on snowflake algorithm and implementation of ID to string conversion
-
relog
Strong String Normalization
-
rmqtt-raft
- A raft framework, for regular people
-
od_opencv
Object detection utilities in Rust programming language for YOLO-based neural networks in OpenCV ecosystem
-
rusty_planner
Artificial intelligence planning & reasoning library for Rust
-
fmttools
Tools for modifying text without allocating any intermediate buffers or unsafe code
-
fastapprox
Fast approximate versions of certain functions that arise in machine learning
-
sub-strs
finding sub strings
-
permutation
Small utility for creating, manipulating, and applying permutations
-
convert-base
convert the radix (base) of digits stored in a vector
-
rtforth
Forth implemented in Rust for realtime application
-
lazy-prime-sieve
Lazy Sieve of Eratosthenes for infinitely generating primes lazily in Rust
-
gix-hashtable
that provides hashtable based data structures optimized to utilize ObjectId keys
-
fenris-geometry
Geometry functionality for fenris
-
route_verification_irr
Parse RPSL in the IRR to verify observed BGP routes
-
bies
Helpers for dealing with BIES vectors with text segmentation applications
-
fast_poisson
Bridson's algorithm for fast Poisson disk sampling
-
colourado-iter
small and minimalistic library to generate a random color palette of infinite size
-
ferment-interfaces
Traits for FFI conversions and some helper methods
-
rand_hc
HC128 random number generator
-
graphalgs
Graph algorithms based on the Rust 'petgraph' library
-
autour_core
AUTOmata Utilities and Representation (AUTOUR) is a small toolbox to experiment with various kinds of automata and draw them
-
easer
Tiny library imlementing Robert Penner's easing functions
-
lutz
"An Algorithm for the Real Time Analysis of Digitised Images" by R. K. Lutz
-
text-file-sort
Sort a text file similar to linux sort
-
indexical
indexed collections
-
twofloat
Double-double arithmetic functionality
-
eqlog
Datalog with equality
-
hyperloglog
in Rust
-
matlab-sys
bindings for the Matlab C API
-
four-bar
Four🍀bar library provides simulation and synthesis function for four-bar linkages
-
arrayfire_fork
ArrayFire is a high performance software library for parallel computing with an easy-to-use API. Its array based function set makes parallel programming simple. ArrayFire's multiple backends (CUDA…
-
lazy_diamond_square
Lazy and fast implementation of the diamond-square without randomness
-
whittaker-eilers
sparse matrix implementation of Whittaker-Eilers smoothing and interpolation
-
hkalbasi-rustc-ap-rustc_index
Automatically published version of the package
rustc_index
in the hkalbasi/rust repository from commit e77366b57b799dfa3ce1fcb850c068723a3213ee The publishing script for this crate lives at: https://github… -
acvm
virtual machine that processes ACIR given a backend/proof system
-
powierza-coefficient
Powierża coefficient is a statistic for gauging if one string is an abbreviation of another
-
spectre
lightweight toolkit for analysing p2p network topologies
-
simplerand
fast random number generator
-
tailcall
Safe, zero-cost tail recursion
-
hash40
working with Hash40 types in Smash Ultimate
-
mzpeaks
representing peaks in mass spectrometry data
-
multidimension
High-level manipulation of multi-dimensional arrays
-
favannat
Algorithms to evaluate the function encoded in ANN-like structures
-
cellumina
configure and run cellular automata
-
equation
mathematical expression evaluation and simplification
-
competitive-programming-rs
Competitive Programming Library in Rust
-
mahf
framework for modular construction and evaluation of metaheuristics
-
pagat
that helps you split the bill
-
random_color
generating random attractive colors
-
libbruteforce
brute force hashes (e.g. passwords). It includes a set of pre-configured hashing functions, like md5 or sha256. You can also provide your own hashing function. PLEASE DO NOT use this…
-
vpsearch
Vantage Point Tree search algorithm for fast nearest neighbour search in multi-dimensional metric spaces
-
intel-mkl-sys
binding of unique functions in Intel(R) MKL
-
decompound
Decompose a compound word into its constituent parts. Works in any language, as you provide the rules around what constitutes a (*single*) word.
-
minecraft_downloader_core
Minecraft downloader written in rust
-
cdchunking
Content-defined chunking
-
hilbert
curve transform and inverse for points having two to thousands of dimensions, using Skilling's algorithm
-
sif-embedding
Smooth inverse frequency (SIF), a simple but powerful embedding technique for sentences
-
const-crc32
const fn
implementation of crc32 checksum algorithm -
rand_simple
random number generator that is independent from the other libraries and based on XOR shift
-
llm-bloom
BLOOM (BigScience Large Open-science Open-access Multilingual Language Model) for the
llm
ecosystem -
gf256
containing Galois-field types and utilities
-
pdqselect
Selects the kth smallest element of a slice, based on Orson Peters's Pattern Defeating Quickselect
-
clf
flush the cpu cache line by __builtin_clear_cache()
-
eviolite
Toolkit for working with evolutionary algorithms
-
promerge
Parse, edit and merge Prometheus metrics exposition format
-
piper
Async pipes, channels, mutexes, and more
-
rhai-sci
Scientific computing in the Rhai scripting language
-
const-fnv1a-hash
#![no_std] crate for performing FNV1A-16/32/64/128 hashing on Rust stable at compile time
-
chrono-probe
Compare and measure the time complexity of algorithms
-
argmap
parse command-line arguments into a hashmap and vec of positional args
-
abd-clam
Clustering, Learning and Approximation with Manifolds
-
interp
Matlab's interp1 function
-
topk
algorithm implementation in Rust
-
crc16
A CRC16 implementation
-
autocomplete
Auto-complete feature using Trie data structure
-
demes-forward
API for iterating demes models forwards in time
-
number-based
attempt of mine to make working with number bases simple
-
cryptominisat
bindings for CryptoMiniSat, a boolean satisfiability solver
-
msgpack-value
Types and macros for the MessagePack data model
-
powerboxesrs
functions to manipulate and compute metrics on boxes
-
line-col
Convert string slice indices into line/column numbers
-
groestlcoin_hashes
Hash functions used by the rust-groestlcoin eccosystem
-
rrt
Path finding using dual-RRT connect
-
galois_2p8
Basic Arithmetic over all GF(2^8) fields
-
timelag
Creating time-lagged time series data
-
raft-proto
Protocol definitions for the rust language implementation of the Raft algorithm
-
hnsw_rs_thousand_birds
Ann based on Hierarchical Navigable Small World Graphs from Yu.A. Malkov and D.A Yashunin - Modified by the Thousand Birds Inc team to support building for windows
-
dirty-fsm
quick and dirty state machine library
-
aws-smithy-checksums
Checksum calculation and verification callbacks
-
graphplan
planning algorithm from Avrim L. Blum and Merrick L. Furst in Rust
-
fast_polynomial
Faster polynomial evaluation using Estrin's Scheme to exploit instruction-level parallelism
-
tlsh2
TLSH algorithm
-
shape-core
Definition of geometry shapes
-
superslice
Extensions for slices
-
lightningscanner
lightning-fast memory pattern scanner, capable of scanning gigabytes of data per second
-
block-id
generating opaque, unique, and short string values from (unsigned) integers
-
debruijn
Tools for DNA sequences: efficient k-mer manipulation, De Bruijn graph construction and compaction and handling of DNA strings
-
subslice
Fast subslice search
-
downloader-rs
file downloader for rust
-
lp-solvers
.lp file format implementation and external solver invocation for Cbc, Gurobi, cplex, and GLPK
-
cbfr
buffer that run on stack, focusing on performance and speed
-
mot-rs
Dead simple multi object tracking in Rust
-
datas
data structures and algorithms and data analisys
-
lazyrand
generating random numbers easily
-
multistream-batch
Implementations of batching algorithms
-
thepipelinetool
*experimental* pipeline orchestration tool drawing on concepts from Apache Airflow
-
setsum
order-agnostic checksum
-
fnv_rs
Fowler–Noll–Vo hash function including 32, 64, 128, 256, 512, & 1024 bit variants
-
or-tools
Unofficial Rust wrappers to the C++ library Google OR-Tools, open source software for combinatorial optimization
-
rusty_libimobiledevice
ergonomic library to communicate with iOS devices
-
ar-reshaper
Reconstruct Arabic sentences to be used in applications that don't support Arabic script
-
caffe2-graph
xxx
-
normalize-line-endings
Takes an iterator over chars and returns a new iterator with all line endings (\r, \n, or \r\n) as \n
-
fast_hilbert
Fast Hilbert 2D curve computation using an efficient Lookup Table (LUT)
-
wave-function-collapse
Converts nodes and their restrictions into a collapsed node state based on the selected algorithm
-
polyline-ffi
FFI bindings for the polyline crate
-
gchemol-lattice
Periodic 3D crystal lattice
-
key-vec
Vec of key-value pairs sorted by key
-
dlt
(direct linear transform) algorithm for camera calibration
-
gat-lending-iterator
iterators who's items can [mutably] reference the iterator
-
memx-cdy
fast memory functions like a libc memcmp(), memchr(), memmem(), memcpy(), memset()
-
fer
fast image resizing with using of SIMD instructions, slim version
-
st-map
Runtime for a stack-alocated map
-
linear-map
map implemented by searching linearly in a vector
-
pwd-grp
Access Unix passwords and groups
-
xorsum
Get XOR hash/digest with this command-line tool
-
easy_base64
package provides the base64 encode/decode functions
-
lace_consts
Default constants for Lace
-
timerfd
interface to the Linux kernel's timerfd API
-
bitvec-rs
Bit vector with guaranteed
[u8]
representation and the ability to get safe immutable and mutable views into its internal vector for easy I/O -
extprim
Extra primitive types (u128, i128)
-
median
efficient O(n) median filter
-
causal-hub
hub for Causal Data Science
-
fast-math
Fast, approximate versions of mathematical functions
-
rustworkx-core
APIs used for rustworkx algorithms
-
pairing_ce
Pairing-friendly elliptic curve library
-
astro
Advanced algorithms for astronomy
-
fenwick
tree: data structure that efficiently calculates prefix sums in a changing array of numbers
-
algorithms-rs
Introduction to Algorithms Thrid Edition By Rust programming Language
-
num-to-words
Number to words converter
-
generic-state-machine
that allows to create generic or Moore or Mealy state machines that allows the use of custom transition functions
-
ac-library-rs
port of AtCoder Library (ACL)
-
i_triangle
poly-bool library that supports main operations such as union, intersection, difference, xor, and self-intersection by the even-odd rule. This algorithm is based on Vatti clipping ideas but is an original implementation.
-
matrixcompare
Tools for convenient comparison of matrices
-
algebraics
algebraic numbers library
-
acorn_prng
no_std, 0 dependency, pseudo-random number generator based on the ACORN algorithm
-
quotient-filter
quotient filter implementation
-
cloudproof_anonymization
Cosmian Cloudproof Anonymization library
-
i_float
fixed float math library provides an efficient and deterministic solution for arithmetic and geometric operations
-
contest-algorithms
Common algorithms and data structures for programming contests
-
binary-merge
Minimum comparison merge of two sorted sequences with random access
-
metrics-exporter-influx
metrics-compatible exporter for sending metrics to Influx/Grafana Cloud
-
programinduction
program induction and learning representations
-
hierarchical_pathfinding
Quickly approximate Paths on a Grid
-
vrp-scientific
extension logic for solving scientific VRP
-
pergola
abstract types for join-semilattices
-
jrsonnet-types
Jrsonnet type system definition
-
vtkio
Parser and writer for the legacy VTK file format
-
glidesort
sorting algorithm
-
bentobox
fast, allocation-free Monte Carlo model of a top-N podium finish in racing events
-
signed_distance_fields
SDFs (signed distance fields) and some operators to play with these SDFs
-
basic_dsp_vector
Digital signal processing based on real or complex vectors in time or frequency domain
-
tokenizations
alignments library
-
eom
Configurable ODE/PDE solver
-
decluster
Iteratively declusters and replaces a randomised set of 2D points until a set is discovered where each point is separated by at least the specified minimum distance
-
qdft
Constant-Q Sliding DFT
-
wpa-psk
Compute the WPA-PSK of a Wi-FI SSID and passphrase
-
rusty_oge
Библиотека, решающая задачки из ОГЭ по информатике
-
payback
Calculate to resolve debt networks with as few transactions as possible
-
smtlib
high-level API for interacting with SMT solvers
-
hashers
collection of non-cryptographic hashing algorithms for Rust
-
worley-noise
Worley noise implementation
-
entromatica
constructing, simulating and analyzing markov chains
-
apodize
iterators that yield generalized cosine, hanning, hamming, blackman, nuttall and triangular windows
-
bc-rand
Blockchain Commons Random Number Utilities
-
ed2k
hash function
-
kube_quantity_2
kube_quantity is a library adding arithmetic operations to the Quantity type from the k8s-openapi crate
-
weighted-rs
libray for weighted balancing algorithm
-
chardet
version of chardet
-
actionable
enum-based async framework for building permission-driven APIs
-
feruca
Unicode Collation Algorithm
-
ddgg
stable graph with undo/redo built in
-
perm
-
vector-traits
traits for 2D and 3D vector types
-
fuzzerang
Efficient random number generators and distributions for fuzzing
-
edfsm
Event Driven Finite State Machine library
-
resolvo
Fast package resolver written in Rust (CDCL based SAT solving)
-
nested_containment_list
data structure for efficiently storing and querying nested intervals
-
graphiti
macro dsl and builder for creating and describing arbitrary sets of related data using a serializable description type
-
numerilib
Mathematics Library
-
rsbalancer
that implements load balancing algorithms
-
ext-sort
external sort algorithm implementation
-
hipparchus-geo
latlon, ellipisoid & geodesic calculations
-
memory-pager
Access memory using small fixed size buffers
-
ru_annoy
annoy(https://github.com/spotify/annoy) (Index serving only). Providing C api as well
-
hex2d
Helper library for working with 2d hex-grid maps
-
interfaces
interacting with network interfaces
-
bsa3-hash
hash function used in BSA files for *The Elder Scrolls III: Morrowind*
-
nlopt
Wrapper for the nlopt library
-
fft2d
Fourier transform for 2D data such as images
-
hdfs-sys
Bindings to HDFS Native C API
-
validatus
Validator types, returns multiple tolerable errors at once
-
craneliftc
light c compatible ffi wrapper around cranelift
-
jumphash
Fast, Minimal Memory, Consistent Hash Algorithm
-
parametrics
working with parametric functions
-
codice_fiscale_rs
compute and validate Italian Tax code (codice fiscale)
-
hora
Search Everywhere
-
cylinder
high-level cryptographic signing library
-
smooth-numbers
Algorithms to generate smooth numbers
-
quickdiv
Faster repeated division and modulo operations by the same divisor
-
vsprintf
bindings to the libc vsprintf function
-
mocats
fast, easy-to-use, generalized Monte Carlo Tree Search library. Works for any game, any number of players, and any tree policy (UCT Policy included as a default).
-
depper
basic dependency validation
-
srtree
SR-Tree: a high-dimensional nearest neighbor search index
-
hirschberg
Generic implementation of Hirschberg's algorithm in Rust
-
range_rover
Function to pack integers into ranges
-
pregel-rs
Graph library written in Rust for implementing your own algorithms in a Pregel fashion
-
mctser
incridiblely easy-to-use library for Monte Carlo Tree Search
-
lexi-rs
client for lexidb - an in memory data structure database
-
atrocious_sort
Some of the most useless sorting algorithms implemented in Rust
-
lazysort
Lazy sorting for iterators
-
imei
number validator
-
dtw_rs
Dynamic Time Warping Library for Rust
-
rust-3d
2D/3D library written in rust
-
oxygraph
Algorithms and structures on ecological graphs
-
qframework
experimental micor framework for clear design, based on queue model
-
sparse-bitfield
Bitfield that allocates a series of small buffers
-
dsll
Fast Thread Safe Doubly Sorted Linked List
-
fuzzy-search
collections for fuzzy search
-
blake
hash function for Rust via FFI
-
faiss-sys
Native bindings for Faiss
-
color_space
converting between color spaces and comparing colors
-
mas-keystore
Secret keys store used by the Matrix Authentication Service
-
relp
Exact Linear Programming
-
rucrf
Conditional Random Fields implemented in pure Rust
-
dprint-swc-ext
Functionality to make swc easier to work with
-
randperm-crt
Small library for generating random permutations
-
rustonomicon_optima
Various algorithms for optimization
-
sfcgal
High-level bindings to SFCGAL and conversion from/to other geometry libraries
-
four-cc
Newtype wrapper providing a convenient representation of four-character-code values
-
mersenne-twister-m
mersenne twister pseudorandom number generator
-
sss_moo
SSS Many-Objective Optimization Framework
-
kalmanfilt
Kalman and other filters from Kalman-and-Bayesian-Filters-in-Python
-
bidimensional
collection of 2D utilities for coordinate representation and manipulation
-
quasirandom
number generation
-
route_verification_bloom
Parse RPSL in the IRR to verify observed BGP routes
-
openmls_evercrypt
crypto backend for OpenMLS implementing openmls_traits using HACL/Evercrypt
-
rkr-gst
Running Karp-Rabin Greedy String Tiling algorithm
-
rufi_gradient
aggregate program implementing the gradient with the RuFi framework
-
abv
AV and BV convert functions for Bilibili videos
-
ros-nalgebra
ROS message converter for rosrust and nalgebra
-
xx-hash
xxHash implementation
-
numext-fixed-hash
Fixed-size hash types
-
satlog
logger for SAT-like solvers
-
sobol
sequence generator for Rust
-
graphbench
sparse graph analysis library
-
poisson-diskus
Poisson disk distribution sampling
-
iterslide
"sliding window" iterator
-
buldak
that provides various sorting functions
-
rust-guile
Scheme runtime in your Rust program
-
bigdecimal-ethers-ext
allowing conversion between BigDecimal and ethers
-
progress-encode
Progress ENCODE function
-
primes
package for calculating primes using the Sieve of Eratosthenes, and using that to check if a number is prime and calculating factors. Includes an iterator over all primes.
-
librobotcontrol-sys
port of librobotcontrol
-
rsa_rs
rsa library -- UNTESTED HOBBY PROJECT -- DO NOT USE FOR SERIOUS APPLICATIONS
-
easylazy
Easy lazy initialization of variables
-
lol-core
Raft implementation in Rust language
-
rust-bigint
Common traits and methods for multiple BigInt implementations
-
openraft-sledstore
sled based implementation of the
openraft::RaftStorage
trait -
topo_sort
'cycle-safe' topological sort for a set of nodes with dependencies
-
bisector
Flexible bisect implementatation which allows the use the bisection method on arbitrary data types
-
idgenerator
powerful unique id generator. Shorter ID and faster generation with a new snowflake drift algorithm. The core is to shorten the ID length, but also can have a very high instantaneous concurrent processing capacity…
-
ripped
pure-Rust Interior-Point solver for linear programs
-
grid_shapes
general purpose 2d grid shape library
-
svg2polylines
Convert SVG data to a list of polylines (aka polygonal chains or polygonal paths)
-
sdset
Set operations for sorted and deduplicated slices. Much performances! Such Wow!
-
geolocation_utils
repository which will allow easier calculations of bounds based on latitude and longitude coordinates
-
simple-easing
Set of simple easing functions
-
exhaust
Trait and derive macro for working with all possible values of a type (exhaustive enumeration)
-
ss-graph-rs
graph algorithm library written in Rust, primarily featuring a function for finding all paths
-
longest-increasing-subsequence
Find a longest increasing subsequence of some input sequence
-
zwohash
fast, deterministic, non-cryptographic hash for use in hash tables
-
mur3
language implementation of MurmurHash3
-
fhex
providing the ToHex trait for converting floating-point numbers to hexadecimal
-
quad-rand
Pseudo random implementation with std atomics
-
wyhash
fast portable non-cryptographic hashing algorithm and random number generator
-
coord_transforms
performing coordinate transformations
-
binary_modifier
read & write to buffer
-
pubgrub
version solving algorithm
-
crc32-v2
port of the CRC-32 algorithm to Rust
-
osqp
(Operator Splitting Quadratic Program) solver
-
golomb-coded-set
BIP158 Golomb-Coded Set data structure
-
reed-solomon-16
Reed-Solomon GF(2^16) erasure coding with O(n log n) complexity
-
concorde_rs
binding to Concorde TSP Solver
-
circbuf
growable circular buffer for working with bytes
-
hud-slice-by-8
HUD Software's Rust improved implementation of the Intel Slice-By-8 algorithm
-
petal-decomposition
Matrix decomposition algorithms including PCA (principal component analysis) and ICA (independent component analysis)
-
k_nearest
K-nearest neighbors search for points with maximal search radius
-
tools-2048
that provides the core logic of the popular game 2048, along with a basic AI to play the game
-
crfsuite
Safe wrapper of crfsuite
-
x509
X.509 certificate serialization
-
linfa-linalg
Pure-Rust implementation of linear algebra routines for ndarray
-
arion
Solver and Local search operators for vehicle routing problems
-
cdll
circular doubly linked list
-
runnt
Easy Neural Network for machine learning
-
atomic-traits
traits for generic atomic operations
-
biodome
Reading and parsing env vars with defaults and structured types
-
tetengo_trie
trie library implemented with a double array
-
proof-fair
provably fair random number generator (RNG) using HMAC-SHA512 hash with a server seed, a client seed, and a nonce
-
oxi-api
bindings to Neovim's C API for nvim-oxi
-
npc-engine-utils
module of the NPC engine, providing re-usable support code
-
adqselect
lightweight crate that brings an implementation of nth_element by using the adaptive quickselect algorithm by Andrei Alexandrescu
-
udigest
Unambiguously digest structured data
-
oblivious_state_machine
defines an abstraction level to conveniently describe state machines
-
a-star_traitbased
Implemetaion of A* useful for stuct, based on train implementation
-
sample-std
Sampler definitions and implementations for st
-
wkhtmltopdf
High-level bindings to wkhtmltopdf
-
rscompress-transformation
data transformation supporting rscompress
-
field33_rdftk_core_temporary_fork
core RDF data model; concrete implementations for Statements and Literals, along with a Resource type that provides a builder-like experience for models
-
rand-sequence
no-std crate for generating random sequences of unique integers in O(1) time
-
rustsat-glucose
Interface to the SAT solver Glucose for the RustSAT library
-
esl01-indexedlog
Append-only on-disk storage with integrity checks and indexing support
-
rand_xoshiro
Xoshiro, xoroshiro and splitmix64 random number generators
-
microwfc
Small Wave-Function-Collapse implementation
-
accurate
(more or less) accurate floating point algorithms
-
animgraph
Animation data flow library using hierarchical state machines
-
quadtree_rs
Point/region Quadtree with support for overlapping regions
-
async-ringbuffer
nonblocking spsc ring buffer with fixed capacity
-
quantum_world_state
in-ram database with relationships between elements inspired by quantum superposition and entanglement
-
context-iterators
Iterators adaptors with associated read-only data
-
crc64
checksum implementation
-
skeid
linear algebra library for game graphics and physics
-
perchance
Very simple random number generation optimized for ease of use
-
candle-gemm-f16
Playground for matrix multiplication algorithms
-
rope_rd
Read/Seek rope implementation
-
order-stat
Compute order statistics efficiently via the Floyd-Rivest algorithm and estimate a median via the median-of-medians algorithm
-
shortlist
efficient data structure to track the largest items pushed to it
-
gchemol-neighbors
Neighborhood search for chemistry
-
nnapi-sys
FFI to the Android NNAPI
-
geometry-predicates
port of robust geometric predicates
-
clone_dyn
Derive to clone dyn structures
-
swap3
Swapping of three references, rotating the values left or right
-
algograph
(both directed and undirected) graph and their algorithms implemented in Rust
-
vmd-rs
Variational Mode Decomoposition in Rust
-
vec_mut_scan
Forward scan over a vector with mutation and item removal
-
beziercurve-wkt
Serialize / deserialize bezier curves to / from a WKT-like string + do clipping operations
-
bloom-filters
port of https://github.com/tylertreat/BoomFilters
-
ed
Encode and Decode traits
-
avalog
experimental implementation of Avatar Logic with a Prolog-like syntax
-
eater_domainmatcher
light weight and fast (probably) domain pattern matcher
-
pairing-plus
Pairing-friendly elliptic curve library
-
simplers_optimization
Simple(x) black-box optimization algorithm
-
npcore
building blocks needed to create new Non-Parametric algorithms and its integration with Pmetrics
-
sw-croaring
wrapper for CRoaring
-
topologic
Topological sorting of Acyclic Dependency Graphs
-
lorust
Modern Rust utility library delivering modularity, performance & extras; or simply Rust version of Lodash
-
fleetfs_raft
language implementation of Raft algorithm
-
dilate
compact, high performance integer dilation library for Rust
-
mt19937
translation of the MT19937 Mersenne Twister rng algorithm to Rust
-
glicko2
rating system
-
pebble_query
helper library for SeaOrm to parse execute, and return standard DTOs with query metadata
-
lindenmayer
Memory Efficient Lindenmayer-Systems
-
fhe-math
Mathematical utilities for the fhe.rs library
-
morton-encoding
encoding and decoding Morton ("Z-order") keys
-
ndsort-rs
Sorting Algorithms implemented in Rust
-
path-finding
variety of path finding and graph operations. Work in progress.
-
permutate
Generic permutator that permutates singular and multiple lists
-
sparse_matrix
do linear algebra with sparse matrix
-
fuchsia-cprng
Fuchsia cryptographically secure pseudorandom number generator
-
rexl
Common Library for Rust
-
avatargen
Generates random png avatars from seeds
-
cplex-sys
Low level bindings to the Cplex C-API
-
grb
API for Gurobi optimizer
-
squares-rnd
fast counter based non-crypto random generator
-
tagged_ufs
union-find-set implementation, in which sets can be associated with tags. When two sets are united, their tags are merged
-
ord_subset
Tools for working with the Ord subset of certain PartialOrd types, like floats
-
graphrs
package for the creation, manipulation and analysis of graphs
-
various_data_file
Store a dainary datas in a file. Use mmap, optimize fragments on delete, and reference identical strings.
-
binpack2d
two-dimensional rectangle bin-packing algorithm
-
sliding_windows
non-copying implementation of a sliding windows iterator adaptor
-
dia-ip-range
-
polymatheia
Mathematical types, traits, and algorithms in pure and safe Rust
-
external_sort
ability to perform external sorts on structs, which allows for rapid sorting of large data streams
-
vec-reg
Generalized regex like pattern matching for vector
-
nblast
neurite similarity algorithm
-
densevec
Map like collection with usize indices that stores values contiguosly
-
morel
string searching library
-
iColor
relatively universal color format conversion tool. that can convert between #RRGGBB, #RGB, #RRGGBBAA, hsl, hsla, hsv, cmyk.
-
flame-clustering
Fuzzy clustering by Local Approximation of MEmberships (FLAME)
-
xcsp3-rust
that help constraint programming solvers implemented by Rust to read XCSP3 files
-
iter-set
Set operations on sorted, deduplicated iterators
-
uuid25
25-digit case-insensitive UUID encoding
-
reductive
Optimized vector quantization for dense vectors
-
algebloat
linear algebra library
-
partition
slices in-place by a predicate
-
rankmap
hash table supporting key ranking
-
xynth
ASIC/GPU-resistant cryptographic hashing algorithm written in pure Rust
-
simple_optimization
Simpler optimizers for simple optimization
-
mbox
malloc-based box. Supports wrapping pointers or null-terminated strings returned from malloc as a Rust type, which will be free'd on drop
-
meshed
Graph creation and traversal tools
-
afarray
Convenience methods for working with ArrayFire arrays in Rust
-
keyde
Fast, Dependency-free Spacial Queries
-
sss_fft
FFT and IFFT for arrays and iterateable collections with modular algorithm interface
-
algorithms_fourth
用rust实现算法4书中的算法,作为rust的学习实践
-
merging-iterator
iterator to return the elements of two independently ordered iterators in order
-
canonical-form
Reduce graphs and other combinatorial structures modulo isomorphism
-
acap
As Close As Possible — nearest neighbor search in Rust
-
detect-lang
Language detection given paths and extensions
-
breadth-first-zip
Breadth-first
zip
guaranteeing a monotonically increasing sum of indices -
skiplist-rs
Skip list is a kind of ordered map and can store any value inside. See skip list wikipedia page to learn more about this data structure.
-
codes-check-digits
Common implementation of check digit algorithms
-
ascent_base
support library for the ascent package
-
ilattice
2 and 3-dimensional integer lattice math
-
moz_cbor
CBOR (https://tools.ietf.org/html/rfc7049) in Rust
-
small-bwt
BWT construction in small space
-
ff-group-tests
collection of sanity tests for implementors of ff/group APIs
-
sprs_suitesparse_ldl
sprs bindings to the suitesparse ldl solver
-
partition-point-veb-layout
partition_point van Emde Boas layout
-
abow
Visual bag of words for fast image matching
-
hrbf
Hermite Radial Basis Functions with higher order derivatives
-
nd-triangulation
Arbitrary dimensional triangulations using CGAL
-
cityhash-rs
no_std implementation of Google Cityhash v1.0.2, v1.0.3, and v1.1.0
-
parseal
easy way to create your own parsers
-
augrim
consensus algorithms implemented in Rust
-
pikkr-annika
JSON Parser which picks up values directly without performing tokenization in Rust. Reuploaded by Annika due to her compile problems.
-
normalized-hash
Cross-platform hash algorithm
-
graphene
general purpose, extensible Graph Theory data type and algorithm library for Rust
-
rust-eratos
'Sieve of Eratosthenes' for rust language practice
-
wordlea
algorithm to check Wordle's word guess
-
assoc
Treat vectors like associative arrays
-
js-resolve
node.js module resolver
-
searchsort
trait implementing Binary Search and Quick Sort algorithms
-
dec-number-sys
bindings for The decNumber C library by IBM Fellow Mike Cowlishaw
-
finny
Finite State Machines with a procedural builder-style API and compile time transition checks
-
tree-sitter-traversal
Traversal of tree-sitter Trees and any arbitrary tree with a TreeCursor-like interface
-
moco_abm
MOCO - Anytime Behavior Model (moco_abm)
-
peak_finder
algorithm for identifying peaks from line data, such as from accelerometer or spectral data
-
isochronous_finite_fields
Isochronous implementation of GF(2^8) arithmetic
-
plonkup
pure-Rust implementation of the PLONK ZK-Proof algorithm
-
sea-canal
Identifies patterns in sequences of integers
-
async-wormhole
Async calls across non-async functions
-
shiftnanigans
contains different iteration data structures for either iterating or for shifting iteratively forward and backward
-
mikktspace-sys
Mikkelsen tangent space algorithm (C wrapper)
-
wildescape
string matching with questionmark, star wildcard operator and an escaped character
-
simple-easing2
Set of simple easing functions
-
maglev
- Google's consistent hashing algorithm
-
fastrand-contrib
Extension functionality for fastrand
-
compound_factor_iter
Iterator types for output permutations from a function combining multiple discrete factors
-
gix-worktree
gitoxide project for shared worktree related types and utilities
-
numbers_rus
flexible library for working with numbers that aims to be useful, fast, and practical. Modular structure makes it easy to use only the parts you need, and the library is designed to be extensible…
-
dep_crusher
Starting at a root node, traverse the dependency graph and flatten it
-
rand_core
Core random number generator traits and tools for implementation
-
median-accumulator
fast, space-efficient accumulator for computing median
-
hungarian
fast implementation of the Hungarian (Kuhn-Munkres) algorithm
-
based64
BASE64 implementation for chads
-
dxpr
Differentiable expression templates in compile-time, dependency-free, no_std Rust
-
term-sort
Visualize sorting algorithms in you terminal
-
watchmaker_vm
virtual machine for use with genetic algorithms
-
pkbuffer
Buffer objects made for arbitrary casting and addressing!
-
importunate
Methods for returning random elements from an iterator
-
floating-distance
Measure distance between floating-point vectors in Rust
-
eudex
blazingly fast phonetic reduction/hashing algorithm
-
fast_ode
Fast Runge-Kutta implementation for solving ordinary differential equations
-
rootfind
Root-finding algorithms
-
arc-interner
interner that deallocates unused values
-
web-assembly-whipshout
Learning Web Assembly
-
zvxryb-broadphase
broadphase collision detection library
-
consistent_hash_ring
flexible and efficient consistent hash ring
-
uints
Unsigned Integer Properties
-
skelly
Skeleton animation and IK
-
savant_rs
Savant rust optimization library
-
granne
Graph-based Retrieval of Approximate Nearest Neighbors
-
hive-asar
Asynchronous parser and writer for Electron's asar archive format
-
deadbolt-parser
Database parser of deadbolt
-
gear-stack-buffer
Gear stack buffer implementation
-
four-bar-ui
Four🍀bar GUI is a simulator, a synthesizing tool for four-bar linkages
-
domtree
dominance relation calculation
-
chemfiles-sys
FFI declaration for the chemfiles library
-
numb_rs
experimental numeric package
-
bigbit
Implements the BigBit format, allowing for compact storage of arbitrarily large numbers
-
const_list
tiny linked list usable in const contexts
-
smbus-pec
Minimal portable implementation of SMBus Packet Error Code calculation algorithm
-
prqlc-parser
parser for the PRQL query language
-
basic_dsp_matrix
Digital signal processing based on real or complex vectors in time or frequency domain
-
associative_positional_list
AssociativePositionalList is a list-like container in which each value is associated with an index, but unlike other list containers, the index for a value can be determined efficiently
-
rtriangulate
Delaunay triangulation on a set of points
-
pschema-rs
Pregel-based schema validation algorithm written in Rust for generating Wikidata subsets
-
csf
compressed static functions (maps) that use perfect hashing and value compression
-
feistel-permutation-rs
Constant time, constant space permutations with Feistel Network ciphers
-
pipe
Synchronous Read/Write memory pipe
-
kendalls
Kendall's tau rank correlation
-
xbar
iterator-based implementation of the locality-preserving one-sided binary tree - crossbar switch wiring design algorithm
-
RayBNN_Graph
Graph Manipulation Library For GPUs, CPUs, and FPGAs via CUDA, OpenCL, and oneAPI
-
optimath
Linear Algebra using const generics for no_std and specialization to enable SIMD
-
bin_packer_3d
Three dimensional fitting algorithm to fit smaller boxes inside of a larger box
-
random_grouping
random grouping
-
moving_min_max
Tracking minimum or maximum of sliding windows
-
halton
module for generating Halton sequences
-
crc-32c
Comput CRC-32C using accelerated SIMD and fusion algorithm
-
snowflake
module for generating guaranteed process unique IDs
-
enso-prelude
augmented standard library in the vein of Haskell's prelude
-
geo-raycasting
Ray Casting algorithm for the geo crate
-
str-similarity
string similarity library
-
staticstep
truly zero-cost alternatives to
Iterator::step_by
for both incrementing and decrementing any type that satisfiesRangeBounds<T: Copy + Default + Step>
-
n18io
Manages the (de)serialisation of 18xx tiles and maps
-
cyclic-poly-23
rolling, decomposable hash algorithm
-
gcd-bitwise
binary Euclidean algorithm for computing gcd
-
frand
Blazingly fast random number generation library
-
game-solver
Solve any combinatorial game
-
fluent_builder
builder API
-
sainte_lague
Sainte-Laguë method for seat distribution used in multiple parliamentary elections all over the world
-
yada_mod
Yada is a yet another double-array trie library aiming for fast search and compact data representation. This fork added a tokenization function
-
power-consistent-hash
Power consistent hash - constant expected time constant memory consistent hash
-
puan-rust
Puan package contain tools for defining logic relationships among linear inequalities and reduction algorithms
-
klownie_matrice
My personnel project on matrices
-
streaming_algorithms
SIMD-accelerated implementations of various streaming algorithms, including Count–min sketch, Top k, HyperLogLog, Reservoir sampling
-
csvs_convert
Some Datapackage Conversion
-
bsutils
Binary search utilities with efficiency
-
minimal_table
minimal table implementation that renders a Vec<Vec<String>> to a string table
-
diamond-square
Generate heightmap using diamond-square algorithm
-
sid-encode
sid2
crate. Internal crate for encoding/decoding sid strings. -
normal-form
trait to easily find the canonical/normal form of graph structures
-
downsample
keep downsampled history of data over long period of time
-
plonk-jubjub
Dusk's fork of the implementation of the Jubjub elliptic curve group
-
minisat
interface. Solves a boolean satisfiability problem given in conjunctive normal form.
-
collenchyma-nn
collenchyma plugin providing Neural Network operations
-
meowhash
Meow hash function
-
kaminpar
wrapper around KaMinPar which is a shared-memory parallel tool to heuristically solve the graph partitioning problem
-
algae-graph
Algae is a collection of core algorithms and data-structures, written in Rust
-
bresenham_zip
Iterator to perform Bresenham over two lines of the same triangle simultaneusly for triangle rasterization
-
stackful
Bridge between sync and async
-
hybrid-clocks
Hybrid Logical Clocks
-
chewing
(酷音) intelligent Zhuyin input method
-
minimax-alpha-beta
Alpha-Beta Pruning + Minimax Algorithm for arbitrary two player minimax style games like Chess, Go, TicTacToe, etc
-
endicon
Implementations of codicon traits for endianness encodings
-
dryip
Short 🩸 Rust 🦀 code snippets for inspiration
-
cellular_maps
generate 2D procedural bitmaps using the cellular automata technique
-
permutation-rs
Do calculations with groups
-
toposort-scc
Kahn's algorithm for topological sorting and Kosaraju's algorithm for strongly connected components
-
search_trees
binary search tree, red-black tree, and AVL tree
-
hex_grid
easily work with 2d hex grids of arbitrary shapes
-
seastar
Dependency-free, non-generic implementation of the A* pathfinding algorithm
-
z3-sys
Low-level bindings for the Z3 SMT solver from Microsoft Research
-
secwords
secure and safe password container
-
rustimization
optimization library which includes L-BFGS-B and Conjugate Gradient algorithm
-
minecraft_launcher_core_msa
Minecraft launcher library written in rust
-
polytype
Hindley-Milner polymorphic typing system
-
redux-rs
Redux
-
rosomaxa
algorithm and other building blocks for creating a solver for optimization problems
-
libhumancode
no_std
compatible library that provides a function to enode binary data up to 150 bits in a human friendly format -
bigfloppa
Arbitrary precision decimal numbers
-
const-identify
Generates unique ids that can be used at compile time
-
world-transmuter-engine
engine part of the port of DataConverter to Rust
-
microstate
Finite state machine, inspired by micromachine
-
dynalock
lease based distributed locking algorithm with support for DynamoDB
-
reunion
generic implementation of the Union-Find w/ Rank data structure
-
slsqp
optimizer for Rust
-
xxhrs
Safe XXHash and XXH3 bindings
-
markov_rs
fast Markov chain generator in Rust
-
pheap
(fast) implementation of pairing heap data structure for priority queue and some graph algorithms
-
algos
collection of algorithms in Rust
-
geohash-rs
geohash crate for Rust
-
CoreFoundation-sys
FFI bindings for CoreFoundation
-
vsort
GNU Version Sort Rust implementation
-
algx
Knuth's Algorithm X
-
oss-vizier
(unofficial) async client library for OSS Vizier
-
parol_runtime
Runtime library for parsers generated by the 'parol' parser generator
-
divisors
blazing fast library to find all divisors of a natural number
-
highs-sys
binding for the HiGHS linear programming solver. See http://highs.dev.
-
metro
rendering graphs similar to
git log --graph
-
pso_rust
famous PSO method
-
iter_columns
Iterate over columns easily
-
naive-cityhash
naive native 64/128 bit cityhash implementation for databend
-
gchemol-geometry
gchemol: a Graph-based CHEMical Objects Library
-
vk_method
Standart of VK Method
-
minirng
mini audio library
-
watermill
Blazingly fast, generic, and serializable online statistics
-
random_choice
Chooses samples randomly by their weights/probabilities
-
jemalloc-info
small library for exporting jemalloc allocation data in Elixir
-
clusterphobia
Algorithms and data structures for unassisted clustering that employ the Hilbert Curve
-
extsort
External sorting (i.e. on disk sorting) capability on arbitrarily sized iterator
-
rustgraphblas
Wrapper for GraphBLAS.h exposing SparseMatrix and SparseVector
-
cgmath-std140
Bridge crate that provides conversion from
cgmath
types tostd140
types -
rust_erl_ext
Erlang external term format codec
-
convolve2d
Easy and extensible pure rust image convolutions
-
rust_fundamentals
Pluralsight Rust Fundamentals publishing example
-
vec-drain-where
alternative
Vec::drain_filter
impl -
wavefront
OBJ parser and utility crate
-
light-curve-common
Common tools for light-curve-* packages
-
rustring_builder
string builder
-
lambdaworks-math
Modular math library for cryptography
-
msgpack_simple
Simplified, easy to use, pure Rust MessagePack implementation focused on handling dynamic data structures
-
hxdmp
small utility to create hexdump output from byte slices
-
iobuf
contiguous region of bytes, useful for I/O operations
-
velodyne-lidar
Velodyne lidar data processing algorithms and utilities
-
bubble-sort-scala
quick and non-optimized, cloning version of the bubble sort algorithm. Created as a showcase for publishing crates in the Rust Cookbook 2018
-
etsm
Efficient Tiny State Machine using object callbacks
-
fenris-optimize
Optimization functionality used by fenris
-
mecs
ecs library with a focus on iteration performance
-
dasp_graph
digital audio signal processing graph
-
genx
easy to use and modular genetic algorithms library
-
rusty-rootsearch
package implements general one-dimensional root-finding algorithms built on the shoulders of the num_dual crate
-
rustgym
solutions
-
nqueens-oxigen
N Queens problem resolution using oxigen
-
ncrypt
WIP rust bindings for the win32 ncrypt api
-
fibonacci_series
Fibonacci Sequence. The Fibonacci Sequence is the series of numbers: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, ... The next number is found by adding up the two numbers before it.
-
range_union_find
union-find data structure for ranges
-
c_vec
Structures to wrap C arrays
-
algs4
Algorithms, 4ed. MOOC in Coursera. in Rust.
-
insides
compact, high performance space filling curve library for Rust
-
primal-bit
Bit-vector specialised to the prime-number-related needs of
primal
-
koek-classify
Allows for classification of values and class-specific treatment (including redaction on display)
-
lttb
Largest Triangle Three Buckets algorithm
-
buter
Fluid buffer as place for iterators
-
mgf
3D collision and physics framework for video games
-
fletcher
dependency free implementation of the Fletcher's checksum algorithm
-
stal
Set algebra solver for Redis
-
xxhash-rs
Safe Rust implementation of xxHash
-
lax
LAPACK wrapper without ndarray
-
eziter
Wrapper around Iterator
-
toolbox
tools for daily use
-
best-path
Shortest/longest path algorithms, where edge weight accumulation via either a sum or a product
-
opensimplex_noise_rs
OpenSimplex noise algorithm implementation in Rust
-
snaplog
easily recording changes to values
-
m4ri-rust
M4RI-based boolean linear algebra
-
simpleconfig
config by string literal. Suitable for API config passing by string literal. Imagine you can pass
level=3;type=zstd
literally to compression algorithm library instead of Config::Builder::new()… -
tri_poly_moment
Calculate moments of random variables. The distributions of the random variables are normal, uniform, and exponential.
-
suffix_array
Suffix array construction and searching algorithms for in-memory binary data
-
lis
Longest increasing subsequence algorithm
-
blossom
algorithm to get a maximum matching in an undirected graph
-
fossil-delta
functions for calculating differences between strings and applying calculated deltas
-
fluent-comparisons-macros
Macros for the fluent-comparisons crate
-
luhn
validation library
-
mattr
transposing multi-dimensional data
-
matx
lightweight, rusty matrix library that allows for simple and fast matrix operations
-
enso-optics
functional optics
-
dynamic_dict
lightweight basic crate to create dynamically typed dictionaries
-
polyhorn-ios
Polyhorn for iOS
-
bookkeeper-client
Async rust client for Apache BookKeeper
-
ux-webmachine
Port of the Ruby Webmachine library to Rust
-
more-iter
More iterator utilities
-
trajectory
interpolation
-
drbg
Crypographic random number generator CTR_DRBG defined by NIST SP 800-90A R1
-
convex_sync_types
Sync types for the Convex Websocket protocol (convex.dev)
-
maze_generator
different maze generation algorithms
-
syntree_layout
visualize trees from the 'syntree' crate
-
radsort
Radix sort implementation for sorting by scalar keys (integers, floats, chars, bools)
-
data_model
[highly unstable] data model for virtualization
-
gbps
gossip-based peer sampling
-
natom
minimal CDI framework for rust
-
parity-wordlist
Word list used to generate brain wallets for Parity
-
seqalign
Sequence alignment using edit operations
-
git-release-name
turning git shas into release names
-
streaming-stats
Experimental crate for computing basic statistics on streams
-
zhang_hilbert
Produces an arbitrary-sized pseudo-Hilbert scan based on “A Pseudo-Hilbert Scan for Arbitrarily-Sized Arrays” by Zhang, et al
-
hotdrink-rs
HotDrink in Rust
-
multi_iter
Iterator for acting on multiple elements at a time
-
ups
implementaiton of a UPS file patcher
-
sum-queue
Queue struct that keeps a fixed number of items by time, not capacity, and allows to get summarized stats of its content
-
building_blocks_procgen
Algorithms for procedural generation of voxel data
-
shoalart
(WIP) Powerful ASCII Art generator, but not yet easy to use
-
lasy
small library dedicated to LASER path optimisation
-
graco
Generalized Rust Ant Colony Optimization
-
dia-assert
confirming user decision on important tasks
-
lazy-transform-str
Lazy-copying lazy-allocated scanning
str
transformations. This is good e.g. for (un)escaping text, especially if individual strings are short. -
take-some
that provides a way to obtain *some* value from various collections
-
gcm-lcm
Greatest convex minorant, least concave majorant
-
shr3
- 3-shift register random number generator
-
summed-area-table
summed area table
-
rust-freqdist
Frequency Distribution in Rust
-
caffe2op-numpytile
xxx
-
bananapeel
darn-slippery obfuscator algorithm!
-
meiosis
evolutionary algorithm library with as many compile time checks as possible
-
frost-schnorrkel
modular-frost Algorithm compatible with Schnorrkel
-
optimus
ID hashing and Obfuscation using Knuth's Algorithm
-
rure
C API for Rust's regular expression library
-
picorand
zero-dependency, no_std-compatible, easily extendable library intended for fast random number generation using the WyRand PRNG with a pico-sized footprint
-
eratosthenes
Mathematical operations library for Rust
-
rustlex_fsa
manipulating (deterministic) finite automata
-
rustsat-minisat
Interface to the SAT solver Minisat for the RustSAT library
-
macro_machine
State machine generator using macros
-
fast-rustc-ap-rustc_index
Automatically published version of the package
rustc_index
in the rust-lang/rust repository from commit 15812785344d913d779d9738fe3cca8de56f71d5 The publishing script for this crate lives at: https://github… -
cp-rs
Competitive programming library, especially for AoC
-
varisat
CDCL based SAT solver (library)
-
md6
hash function for Rust via FFI
-
vecshard
Split Vecs in constant time
-
fuzzy_trie
Key-value collection to make fuzzy searches
-
random-branch
macro to select a random branch like match
-
vec_to_array
Moves a heap allocated
Vec<T>
to an stack allocated array of typeT
and sizeN
-
ring_buffer
RingBuffer is a queue with added random access
-
permute
Generate permutations of vectors and slices in a memory-efficient and deterministic manner, using Heap's algorithm
-
indexed_bitvec
indexed bitvector with (hopefully) fast rank and select operations
-
ldpc
toolbox for classical and quantum LDPC codes
-
permutation_iterator
iterating over random permutations using O(1) (i.e. constant) space.
-
ncollide3d-updated
2 and 3-dimensional collision detection library in Rust. Will be superseded by the parry3d crate.
-
seqdiff
Diff between two sequences
-
iterutils
Provide easy way to iterate through multiple iterators in ordered/selective way
-
tw-id-num
Check or generate Taiwan ID numbers
-
soundchange
implementing sound change algorithms in Rust
-
lincoln_common
Common functions, traits for Lincoln
-
simple_graph_algorithms
goal of making running graph algorithms as easy as possible
-
branchy
tools for generating strings and sequences using context-free grammars
-
statistical
statistics library
-
boostvoronoi_core
Boost voronoi private workspace (this workspace will be re-integrated in the main crate in next release)
-
pcg_with_xorshift
tiny random number generator
-
nmm_lib
nine mens morris
-
numerical
Algorithm for numerical analysis
-
dancing-links
Exact cover solver using dancing links technique
-
filter
Kalman filters and other optimal and non-optimal estimation filters in Rust
-
here_be_dragons
Map generator for games
-
pact_matching_ffi
Pact matching interface for foreign languages. [DEPRECATED, replaced with pact_ffi]
-
highwayhash
Bindings to AVX-2-optimized SIP-like hash functions
-
floydrivest
lightweight crate that brings the Floyd-Rivest implementation of nth_element
-
lz_fnv
Fowler-Noll-Vo hash functions for various integer types
-
lsh-rs
LSH: Approximate Nearest Neighbor Search with Locality Sensitive Hashing
-
bvrs
lightweight rust library for BitVector Rank&Select operations, coupled with a generic Sparse Array implementation
-
boostvoronoi_ext
Boost voronoi private workspace (this workspace will be re-integrated in the main crate in next release)
-
hopcroft-karp
minimal implementation of the Hopcrof-Karp bipartite matching algorithm
-
hulahoop
efficient consistent hash ring implementation supporting virtual nodes
-
darwin-rs
Evolutionary algorithms library written in Rust
-
sorted-insert
traits to insert elements to a sorted collection and keep the order
-
object-detection-opencv-rust
Object detection utilities in Rust programming language for YOLO-based neural networks in OpenCV ecosystem
-
batsat
Extensible SAT solver in Rust
-
bitarray-naive
naive rust implementation of a bitarray
-
mikktspace
Mikkelsen tangent space algorithm
-
inline-const
Inline consts implemented as a macro
-
spdkit
spdkit: Structure Predication Development Kit
-
rs-uuid
Universally unique identifier generator
-
autour_process
AUTOmata Utilities and Representation (AUTOUR) is a small toolbox to experiment with various kinds of automata and draw them
-
batbox-range
Helpers for working with ranges
-
chandeliers-std
standard library for the Chandeliers suite
-
rusty-perm
permutation with no-std
-
matroid
complete Matrix Algebra library written in rust
-
rtsam
Real Time Smoothing and Mapping (RTSAM) in Rust
-
ram
that helps to parse source code with finite state machines
-
length
handle length/distances easyly. It can parse a string with several units (m, km, mi, ft, ...) into the Length-struct and converting into other units.
-
hexagex
Match binary data with hexadecimal regexes
-
fuss
Small, lightweight simplex noise generator for Rust
-
bit-matrix
bit matrices and vectors
-
proc-opt
WIP: Process/Job scheduling optimization library
-
affine_transforms
(Pre Release Package) Does linear transformations in R3
-
xxhash-c-sys
Bindings to xxhash
-
img_hash_median
that provides perceptual hashing and difference calculation for images. Includes median PHash
-
fuzzy_dbscan
FuzzyDBSCAN algorithm
-
fix-rat
rational number type with fixed denominator
-
exact-cover
(WIP) Asynchronous exact cover solver library using Knuth's dancing links algorithm
-
npy-writer
Export numpy arrays in the npy or npz format
-
base58check
encoding
-
caffe2-event
xxx
-
cfg-regex
Conversion from a regular expression to a context-free grammar
-
clock-zones
handling clock zones
-
sorting_rs
Collection of sorting algorithms implemented in Rust
-
linal
tiny linear algebra library without dependencies
-
brute-force
brute forcing arbitrary computations
-
pennereq
Port of the Penner easing equations to rust
-
kahan
types to perform Kahan summation
-
munkres
Kuhn-Munkres (aka Hungarian) algorithm for solving the Assignment Problem in O(n^3)
-
rand_jitter
Random number generator based on timing jitter
-
doryen-extra
aims to be a loose re-implementation of the utility features from the popular roguelike library named libtcod
-
divsufsort
port of Yuta Mori's divsufsort
-
aobscan
multi-threaded AOB memory scanning
-
rug-maths
rug wrapper implementing maths-traits
-
ndarray-rblas
rblas
bindings forndarray
-
number_traits
number traits
-
alass-core
Automatic Language-Agnostic Subtitle Synchronization (Library)
-
psqr
P-Square Algorithm for Dynamic Calculation of Percentiles and Histograms without Storing Observations
-
simplegraph
graph implementation
-
koala
Python's pandas implementation in Rust
-
pso
Particle Swarm Optimizer
-
id_graph_sccs
Find the strongly-connected components of a graph with nodes labeled by integer ids
-
async-hsm
lightweight asynchronous hierarchical state machine (HSM)
-
patiencediff
algorithm
-
rscompress-approximation
data approximations supporting rscompress
-
k8-obj-app
Kubernetes app objects
-
maria-linalg
linear algebra processing package
-
bpci
Binomial proportion confidence intervals
-
morton
space filling curve functions
-
classific
Classifications, comparator and equivalence class implementations
-
rev_buf_reader
that provides a buffered reader capable of reading chunks of bytes of a data stream in reverse order. Its implementation is an adapted copy of BufReader from the nightly std::io.
-
chromaprint
Bindings to Chromaprint
-
bidir-map
Bidirectional map implementation for Rust
-
object-query
Abstracted object queries
-
lazy-transform
Lazy transformations of values
-
polyhorn-layout
Abstraction over flexbox layout algorithms
-
marching-squares
Parallelized marching squares algorithm for constructing closed isolines / contour lines
-
rust_cards
Simulates playing cards
-
sorted_intersection
Intersection Iterator Over Sorted Iterators
-
mcmf
solving instances of the minimum cost maximum flow problem. It uses the network simplex algorithm from the LEMON graph optimization library.
-
crockford-uuid
generate and parse Crockford Base32 Identifiers
-
tilecover
Generate the minimum number of tiles to cover a geometry
-
benford
test the Benford-ness of a given set of numbers
-
sparse_linear_assignment
Solvers for sparse linear assignment problem based on the auction algorithm
-
mini-kanren
miniKANREN in Rust
-
advancedresearch-tree_mem_sort
in-memory topological sort algorithm for trees based on Group Theory
-
nebula-fbthrift-common
Nebula Graph common interface
-
rdx
collection of traits and algorithms to ease using radix sorts
-
java_random
java LCG and random module implementation in rust
-
rustneat
NeuroEvolution of Augmenting Topologies NEAT http://nn.cs.utexas.edu/downloads/papers/stanley.ec02.pdf with a Continuous-Time Recurrent Neural Networks
-
bit_combi_iter
iterator to iterate all bit combinations less than given unsigned integer
-
minecraft_launcher_core
Minecraft launcher library written in rust
-
ruststft
computes the short-time fourier transform on streaming data
-
daphne_worker
Workers backend for Daphne
-
tomlyre
parsing, converting, and syntax highlighting data in various formats, such as TOML, YAML, and more
-
randomkit
numpy.random
for Rust -
IntegerScaling
Calculates integer ratios and scaled-image sizes for pixel-perfect image upscaling with optional aspect-ratio correction
-
kmpsearch
String/Byte pattern searching within byte slices or strings, using the Knuth Morris Pratt algorithm
-
murmurhash3
MurmurHash3 implementation
-
tree-layout
Get the arrangement layout of the tree diagram
-
radiant-utils
Radiant example code support library
-
non-empty-collections
Non-empty hash-map and hash-set implementations
-
biogarden
collection of basic bioinformatics algorithms
-
isogeometric_analysis
Create implementing algorithms related to Isogeometric Analysis. Bezier, B-spline, NURBS, numerical integration and isogeometric approach to PDE approximation.
-
libd
Someone is wrong on the internet
-
quickselect
基于rust的选择算法
-
machinebox
client SDK for communicating with machinebox boxes
-
tower-fault-injector
Tower layers for fault injection
-
n_best
Convenient collection to gather the N highest elements, and discard the others
-
zchess
(WIP) A library for calculating chess moves in a 3-dimensional space
-
sorting
world's best, finest and inefficient sorting algorithms
-
poisson
Poisson-disk distribution generator
-
bit-list
lazy list of bits
-
automaters
Implémentation d'automate en Rust. (FSM, NFA, DFA, NDFAE)
-
coupe
mesh partitioning library. It implements composable geometric and topologic algorithms.
-
proportionate_selector
Selecting useful solutions for recombination via fitness proportionate selection
-
aces
Algebra of Cause-Effect Structures
-
comtesse
graph utilities
-
bloom_filter_simple
generic bloom filter implementation
-
async-di
Async dependency injection container
-
fixedbitset-utils
bunch of utility stuffs that I use when working with bitsets in Rust
-
fullcodec-plonk
pure-Rust implementation of the PLONK ZK-Proof algorithm
-
elias-fano
encoding in Rust
-
timeflaketiny-rs
TimeflakeTiny is 64-bit sized timebased unique, roughly-ordered and compatible with sqlite. Inspired by original Timeflake that is 128-bit sized.
-
rustic-fuzz
sorting strings based on their Levenshtein distance to a reference string
-
simple-std
extension to the Rust standard library for exercises
-
chull
Convex hull approximation
-
edit_tree
Edit trees in rust
-
math
A math library
-
basichll
basic HyperLogLog algorithm
-
sortedlist-rs
fast sorted list data structure in rust
-
honestintervals
Comprehensive, correctly rounding interval arithmetic library
-
reverse-lines
Iterator for reading files line by line with a buffer in reverse
-
trait-based-collection
trait-based collection library that implement different data structures using the same trait
-
imohash
Fast hashing for large files
-
building_blocks_storage
Efficient storage for maps on sparse or dense, 2D and 3D integer lattices
-
pyin
pitch detection algorithm written in Rust
-
leaky-cow
Leak the contents of a Clone-On-Write pointer
-
wasmium-random
Generate random numeric, alphabet, alphanumeric, BIP39 and EFF random bytes
-
wookong-solo
Wookong Solo driver crate
-
idalloc
different methods of allocating unique identifiers efficiently
-
lfa
Native rust implementations of linear function approximators
-
library_of_babel
Babel in Rust
-
retry_async
retrying, with specific support for the Azure SDK for Rust (cf. https://github.com/Azure/azure-sdk-for-rust).
-
bigs
bipartite graph sampler
-
extended_matrix_float
Float trait for extended_matrix lib
-
avl-cont
contiguous AVL Tree
-
flo_float_encoder
byte encoder for floating point values
-
dep-res
dependency resolution
-
label-propagation
Label Propagation Algorithm by Rust
-
hipparchus-metrics
collection of distance metrics
-
dft
package provides an algorithm to compute the discrete Fourier transform
-
lesspass
efficient implementation of the LessPass password generator
-
win-tpm
TPM to create and manage RSA keys (windows only)
-
trivial-kernel
Metamath Zero kernel for Trivial
-
pcg
port of the PCG random number generation library
-
alpha-counter
Alphabetic counter
-
floyd-warshall-alg
Floyd-Warshall algorithm supporting customization
-
algods
collection of data structures and algorithms
-
snark-tool
contains structures and algorithm for (mainly) cubic graph analysis
-
polyrhythm
generating polyrhythms
-
march
Markov chain implementation
-
hypospray
Lightweight dependency injection library
-
libips
core library for the rust version of the Image Packaging System. Includes Python bindings.
-
hoeffding_integer_d
Hoeffding's Dependence coefficient presented as an integer between minimum and maximum integer values of the statistic. Hoeffding's D is like Pearsons correlation R, but accepts a wide range of nonlinear situations…
-
vector_mapp
Vec based map
-
w_inter
❄️ Weighted INTERval scheduling problem
-
acvp-parser
Parser for Automated Cryptographic Validation Protocol (ACVP) Test Vectors
-
nats-types
Enumerations and types for representing NATS protocol messages
-
rusty-santa
Resolve Secret Santa assignments with additional constraints
-
masker
Mask patterns in data
-
ilc-ops
IRC log converter/collector/cruncher
-
sparse
-
hash-algorithms
Hash, generally translated as hash, hash, or transliterated as hash, is to transform any length of input (also known as pre image) into fixed length output through hash algorithm, and the output is the hash value…
-
aoc-toolbox
helping framework to Advent of Code
-
value-bag-sval2
detail for value-bag
-
randomizer
random string/byte generator
-
ackr
Storm acking algorithm in Rust
-
hutton-rust
Hutton cipher implemented as a Rust crate
-
guts
Traits for constructing/destructuring from/into a type's internal guts
-
read_iter
any std::io::Read implementor, add also Iterator<Item=u8> implementation
-
beagle
basic linear algebra library for computer graphics
-
textspan
Text span utility
-
aws-tree-hash
Calculate the Amazon SHA256 tree hash as described on Checksum Calculation page of the AWS S3 Glacier developer guide
-
flot
Generate HTML documents with embedded charts using Flot
-
zpatial
Algorithms for Spatial Acceleration and Geometries
-
hot-ranking-algorithm
Algorithm that measures how relevant a given data set is, kinda like Reddit
-
nlsn-delaunay
Delaunay Triangulation and Refinement implementation through Bowyer Watson incremental insertion, conflict maps and ghost vertices
-
monoid
package providing some common monoids for use in Rust
-
malwaredb-murmurhash3
MurmurHash3 implementation
-
cv
Batteries-included pure-Rust computer vision crate
-
qoqo_calculator_pyo3
Python interface to qoqo calculator, the calculator backend of the qoqo quantum computing toolkit by HQS Quantum Simulations
-
spaced-repetition
spaced repetition algorithm based on anki and supermemo
-
generic-floyd-warshall
generic implementation of the Floyd-Warshall algorithm for array-like types
-
rusted_list
ever sorted list for rust that is operating on binary search
-
yass-2
string similarity library
-
enso-shapely
Automated typeclass derivation
-
paired
Fork of the 'paired: Pairing-friendly elliptic curve library'
-
tlsh-fixed
port of Trend Micro Locality Sensitive Hashing
-
tree_traversal
Find best leaf node in a tree
-
lisudoku-solver
Solver for sudoku puzzles used by lisudoku
-
partitions
disjoint-sets/union-find implementation that allows for efficient iteration over elements of a set
-
stl_rotate
C++ std::rotate for Vec type using Range instead of first, .., last
-
fixed-length-search
fastest algorithm for finding a path with a specific length in a graph
-
recollection
implementations and reimplementations of common data structures and algorithms, and other personally commonly used utilities
-
ocaml-boxroot-sys
Boxroot for OCaml: fast movable GC roots (C API)
-
spsa
Simultaneous perturbation stochastic approximation
-
reciprocal
Baseline implementation of integer division by constants
-
appro-eq
Approximately equal traits and assertion
-
tabu
local search functionality in general, plus derived applications such as local search based clustering
-
backoff-rs
Backoff provides the base components for implementing backoff and retry operations
-
openraft-rocksstore
rocksdb based implementation of the
openraft::RaftStorage
trait -
space_alloc
General purpose space allocators
-
pagan
Data analysis library
-
sfhash
Hsieh Hash
orSuperFastHash
function -
adivon
Data Structures of daily use: Graph, HashTable, PriorityQueue, Trie, SuffixTree, Rope, SplayTree, SkipList, RedBlackTree
-
sixarm_assert
Assert macros for Rust tests. By SixArm.com.
-
clfft
Bindings for clFFT, a FFT library for OpenCL
-
pointy
Minimal 2D geometry library
-
cint
lean, minimal, and stable set of types for color interoperation between crates in Rust
-
flowing
flow graph processing library
-
weighted-rs-wasm
libray for weighted balancing algorithm
-
intrusive-containers
intrusive data structures
-
ingrid
Dynamic two-dimensional arrays with algorithms
-
polygon2
polygon 2d functions
-
whosly
便捷的工具库
-
sugiura-hiromichi_mylibrary
my personal library
-
size_hint
very simple library to provide a size_hint for an iterator which does not provide it's own
-
buffer-trigger
data collection trigger based on the maximum number and refresh time
-
geo-buffer
methods to buffer (to inflate or deflate) certain primitive geometric types in the GeoRust ecosystem via a straight skeleton
-
zip-fill
Iterator library
-
double-buffer
double buffer generic implementation
-
durationfmt
format std::time::Duration the same way Go does
-
elara-math
Rust-native tensor and math library
-
phreak_rules
Rule matching algorithm focussed on speed
-
brace-expand
performs brace expansion of strings, as in shells like Bash etc
-
slippy_map_tilenames
Converts lon/lat coordinates to slippy map tile format (OpenStreetMap/Google Map format)
-
binary_set
Binary set file
-
rand_rgb
Generate a random rgba-formatted color
-
moore-hodgson
Moore Hodgson's Scheduling Algorithm in Rust
-
linxal
Linear Algebra package with rust-ndarray interface
-
clipper-sys
Boolean operations on polygons (Clipper wrapper)
-
stalin-binary-search
alike binary search but any checking element which is not target one is eliminated
-
kmp
Various functions using the Knuth–Morris–Pratt algorithm to efficiently find patterns
-
quickphf
Runtime code for static data structures based on the PTHash perfect hash function
-
extfsm
Extended Finite State Machine with internal event queue and entry/exit transitions
-
chair-rb
containing a Rust port of the ring buffers from the Aeron and compatible with the ring buffers in the Agrona(https://github.com/real-logic/agrona) library
-
rot26-rs
(Joke) no_std Implementation of thr ROT-26 algorithem with a C interface
-
emas_rs
Rust-based EMAS optimization algorithm
-
soft-edge
efficient bithackery for making 3D collision meshes out of grids and stacked tile maps
-
fzyr
fuzzy(er) finder 🔎
-
petgraph-gen
Graph generators for petgraph
-
jaro_winkler
Fast implementation of Jaro-Winkler for comparing two strings
-
learn_together
Curated collection of lists of useful resources to learn Rust together
-
ziku-algorithms
some common algorithms
-
quickbacktrack
back tracking with customizable search for moves
-
partopo
Functions to execute work described by a dependency graph
-
try-continue
Allows processing of iterators of Result types
-
smolmask
small library for storing small binary masks in just a single integer
-
block-array-cow
In memory array de-duplication, useful for efficient storing of a history of data versions
-
randotron
Trivial little library that lets you randomly execute a closure with a sample rate
-
goertzel-nostd
nostd implementation of Goertzel's Algoritm
-
choose-rand
small crate for choosing random items from a set of weighted items
-
adler32fast
Fast, SIMD-accelerated Adler-32 checksum computation
-
principia_optimization
Numerical Optimization Library
-
fractal
package provides a multiscale modeling framework for the analysis and synthesis of positive-valued, long-range-dependent processes
-
learn-rust-with-bubble-sort
quick and non-optimized, cloning version of the bubble sort algorithm. Created as a showcase for publishing crates in the Rust Cookbook 2018
-
xor_rand
arbitrary byte length, counter based PRNG crate
-
fast-erasure-shake-rng
Fast erasure (forward secure) sponge/duplex based PRNG using the Keccak permutation
-
makods
Jostle Tree, a data structure for working with long sequences of variable-width items
-
lazy-st
Single-threaded lazy evaluation
-
rast
toy implementation of the raft consistency protocol focused on speed
-
parol-ls
Language server for parol parser generator
-
mat4
matrix 4x4
-
gray-codes
Iterators over binary Gray codes; utilities for efficiently visiting all subsets of a collection
-
mtl
Matrix template library. Dense2D matrix, SparseMatrix.
-
nilsimsa
locality-sensitive hashing algorithm
-
bubble-sort
quick and non-optimized, cloning version of the bubble sort algorithm. Created as a showcase for publishing crates in the Rust Cookbook 2018
-
solve-leetcode
Solutions to leetcode in rust
-
measurement-units
basic measurements units conversion such as length, mass, time, volume, percents
-
lsap
Solving linear sum assignment problem using JV algorithm as in Scipy
-
intpack
collection of functions for packing/unpacking unsigned integers into other unsigned integers of different sizes. For example, packing 4 u8's into a u32.
-
aliasmethod
Walker's Alias method
-
igs
solving impartial games
-
multistochgrad
Stochastic Gradient, Multithreaded
-
aviary
bird combinators for Rust
-
gsl_rust
safe GSL wrapper
-
siphash_c_d
no-std, safe, generic implementation of the siphash_c_d algorithm
-
pi_adler32
adler32 crc check algorithm
-
runiverse
pure and safe Rust library to make astronomical calculations and solve astronomical algorithms
-
rolling-dual-crc
Rolling CRC with 32-bit CRC32C and 64-bit CRC64/XZ
-
jenkins_hash
Native rust implementation of the hash algorithms from Bob Jenkins
-
n18tile
Defines 18xx tile elements and track networks
-
puid
unique ID generator with 'ch_'-style prefix
-
to_precision
Write out a float rounded to the given position
-
radiate_web
Train Radiate remotely
-
raft
language implementation of Raft algorithm
-
pluck
Extract values conveniently
-
bareiss
Calculates the determinant of an integer square matrix
-
noilib-simple
noise library
-
hcstatic-str
compact storage for short static strings
-
regex_macros
statically compiled regular expressions for Rust. Unless you specifically need compile time regular expressions or a matching engine that is guaranteed not to allocate, you should temporarily prefer using…
-
rst_parser
reStructuredText parser
-
izihawa-fst
tantivy-specific fork from the fst crate from Burntsushi. (Please use the fst crate instead.)
-
extrema
C++'s minmax_element implementation in rust
-
unik
Powerful Universally Unique Identifier (UUID)
-
rudac
common data structures and algorithms
-
mop-common-defs
Common definitions for MOP crates
-
spartan-codec
proof-of-concept encoder for the Subspace Network Blockchain based on the SLOTH permutation
-
dogs
Discrete Optimization Global Search framework. Implements various search algorithms that can be found in combinatorial optimization or heuristic search.
-
sort-it
various sorting algorithms
-
untyped-bytes
bag of bytes you can put any
Copy
type into -
daemonizer
privdrop and daemonize your program
-
constrained_int
Integers that are constrained within inclusive ranges
-
subway
Fast, performant in-memory SkipList implemented in Rust
-
labirust
Naive rust crate for implementing and testing maze solving Algorithms
-
hyperid
Superfast id generator
-
ethiopic-numerals
Convert to Ethiopic Numerals
-
rtt
Rapidly-Exploring random trees path planning algorithm
-
phi-detector
Phi Accrual Failure Detector
-
evolutionary
fully extensible Rust framework for using paralyzed genetic algorithms to solve problems
-
non-dominated-sort
Fast Non-Dominated Sort Algorithm
-
learnwell
Framework for reinforcement learning
-
tars
providing useful technical indicators
-
bufstream
Buffered I/O for streams where each read/write half is separately buffered
-
schmitttrigger
generic SchmittTrigger implementation
-
md-rs
Median Over Period (MD) Implementation In Rust
-
grb-sys
Low level bindings to Gurobi
-
ferrate
Math Library
-
modulo
operation
-
hamming
Count ones, fast (aka popcount, hamming weight). This provides a performant popcount and bitwise hamming distance for a slice of bytes.
-
primecount
wrapper for https://github.com/kimwalisch/primecount
-
istos
graphs
-
netaheuristics
Framework to create metaheuristics
-
waitmap
awaitable concurrent hash map
-
triangulate
Subdivides polygons into equivalent triangles
-
optimum
Future Framework to solve optimization problems
-
idhash
Calculate a Row-Invariant ID for Tabular Data
-
sorts
collection of sorting algorithms
-
xxh
XXHash algorithm implementation for Rust
-
rule30
Pseudo random number generator with cellular automaton rule 30
-
flatten_overlapping_ranges
Flatten overlapping ranges into a sequence of sections
-
revonet
real-coded genetic algorithm for solving optimization problems and training of neural networks. The latter is also known as neuroevolution.
-
twoword
Construct bigger uints by combining two smaller ones into a two-word uint
-
rpack
Packing algorithm implmentation
-
recycle_vec
method for Vec to recycle it's backing allocation for use with another Vec of different type
-
gearhash
Fast, SIMD-accelerated hash function for content-defined chunking
-
csr_matrix
generic Compressed Sparse Row (CSR) matrix
-
sra
collection of spaced repetition algorithms
-
count-min-sketch
Count-min-sketch implementation
-
wz-publish-test
Test publish crate, don't use
-
minhash-rs
MinHash trying to be parsimonious with memory
-
wangzy97lib
lib for call by wangzy
-
cognitive-frames
Managing windows for
cognitive
-
hnsw
Fast approximate nearest neighbors
-
caffe2op-distance
xxx
-
or-iterator
iterator which takes two iterators and returns non-empty one
-
loaded_dice
sampler for loaded dices, implementing the alias method
-
aleph-alpha-tokenizer
fast implementation of a wordpiece-inspired tokenizer
-
quickphf_codegen
Code generator for creating static maps and sets for use with quickphf
-
bezier-interpolation
bezier interpolation for Rust
-
prandom
Some PNRG algorithms implemented in Rust
-
neutils
Utitlity functions
-
npc-engine-core
core of the NPC engine, providing a generic MCTS framework
-
huji
graph package still under production
-
sbml-rs
SBML parser written in Rust
-
sylasteven
fundamental logic for creating a modular engine
-
gevlib
containing distributional quantities (CDF, PDF, Quantile, random generation) of the Extreme Value Distributions
-
triangle-rs
binder for the 2D mesh generator and Delaunay triangulator Triangle
-
dispnet-shared
Shared Library used for Dispnet
-
eytzinger-map
array/vec based map using eytzinger search algorithm
-
flat-veb
Fast implementation of vEB trees without internal allocation
-
dedup_iter
Deduplicating iterator adapters
-
knarkzel
Useful functions and re-exports missing in std
-
map-gen-2d
2D map generation algorithms implementaion
-
koper
project
-
algonium
collection of classic algorithms for programming contests
-
numcmp
Comparison between differently typed numbers
-
closest-sum-pair
Finds a pair in a list that has the closest sum to a given number
-
concorde
reconfigurable lattice agreement
-
addchain
Generate addition chains
-
l1-dfa
Deterministic Finite-State Automata Library for Rust, written in L1
-
wuf
fast weighted implementation to the union-find problem with path compression
-
wfc-rs
Binding to the krychu/wfc C library
-
backtrack
Solve hard constraints easily
-
qrs_detector
Realtime ECG QRS detector algorithm
-
polyfit-rs
Polynomial fitting of data like in numpy.polyfit()
-
sffs
collection of bitwise operations
-
rfc7693
blake2s & blake2b implementation following RFC-7693
-
BinaryHelper
binary conversion crate
-
thirtyseconds
Short Rust 🦀 code snippets for inspiration
-
jch
Jump Consistent Hash for Rust
-
maglev_rs
Maglev hashing algo implmentation
-
gml
Graphics Math Library. Generic Vector and Matrix Math library targetting graphics applications.
-
gen-combinations
general combination generator
-
co_sort
Sort arrays given a permutation
-
caffe2op-exp
xxx
-
rogue
algorithms for fov, los, etc for building a roguelike
-
iter-merge-sort
イテレーターをマージソート
-
tramp
Trampoline for recursive functions, with support for mutual recursion
-
search-autocompletion
Search Auto Completion
-
rbuf
general purpose ring buffer implementation with some non-standard constraints
-
safe-modular-arithmetic
modular arithmetic algorithms for all integer types in an overflow-safe and const-compatible manner
-
lpn
Software to study attacks on the Learning Parity with Noise problem
-
sqrt
fast inverse square root
-
grue
Various tools and algorithms for building role-playing and adventure games
-
chronological
Multi-timeline graph, representing state(s) varying over time. Inter-dependency of events between timelines. Supports interpolation.
-
rational_deduction
rational deduction algorithm
-
pocket-relay-utils
Module for utilities used throughout the core, database, and servers for Pocket Relay
-
rust-graph
graph library for Rust
-
c3-lang-linearization
C3 linearization
-
typprice-rs
Typical Price (typprice) Implementation In Rust
-
graph_reduce
Simplify and sort directed acyclic graphs, and their associated matrices
-
tempconvert
package to convert temperature into different units, and their types
-
cp_tricks
Tricks for competitive programming. Do not use this crate.
-
rosalind
contains solutions of problems published on Rosalind.info
-
easy_rss
RSS Parser
-
kdbush
very fast static spatial index for 2D points based on a flat KD-tree
-
statics
calculating static forces on free body diagrams
-
matchtigs
Different algorithms for computing small and minimum plain text representations of kmer sets
-
tension
Tensor library with OpenCL acceleration
-
hierarchical_hash_wheel_timer
low-level timer implementantion using a hierarchical four-level hash wheel with overflow
-
phtree
PH-tree https://tzaeschke.github.io/phtree-site/
-
quicksort_gen
Generic implementation of quicksort algorithm
-
apollo-rs
Please remove
-
factor-semiprime
Pollard's rho algorithm for factoring semiprime numbers
-
easey
Easing functions for interpolation between 0.0 and 1.0
-
anti-r
spatial data structure outperforming r-trees for low numbers of elements
-
nnmf_nalgebra
Non-negative matrix factorization using nalgebra
-
crn
Stochastic and deterministic simulation of chemical reaction networks
-
rounded-div
Get rounded result of an integer division
-
fux_kdtree
K-dimensional tree implemented in Rust for fast NN querying
-
aud
minimal implementation of Sagas
-
gsv-culture-ships
Iain M. Banks's Culture ship names in a library.
-
mini-io-queue
Fixed-length, allocation and lock-free, async I/O oriented single-producer single-consumer queues
-
largest-remainder-method
largest remainder method
-
GSL-sys
binding for the GSL (the GNU scientific library)
-
lcpc-test-fields
fields for testing polycommits
-
rgeometry
High-Level Computational Geometry
-
rodar
command line tool that brings together all the functions Roy would use for analysis and decision-making
-
crostab
table for cross-tablular analysis
-
oars
providing construction methods and utility functions for orthogonal arrays and strong orthogonal arrays
-
karmarkar
algorithm for Rust
-
etcd_dynamic_state
Savant rust optimization library
-
cellular-snapp
Create cellular automata
-
wtest
Tools for writing and running tests
-
iso_iec_7064
Support for check digit operations conforming to ISO/IEC 7064
-
shash
arbitrary-length-input hash function for competitive programming and experimental purposes
-
soundchange-english
Reimplementation of Mark Rosenfelder's pronunciation algorithm for English
-
pi_hash
Provide unified hasher, HashMap and HashSet, The hash algorithm used can be determined by compiling conditions
-
bound-stl
attempts to implement lower_bound and upper_bound in C++ STL
-
serial-key
Create a verifiable serial key from a seed
-
rustgym-util
handy macros, data types and traits for rustgym
-
rand_xorshift
Xorshift random number generator
-
murmurhash64
MurmurHash2 (64bit version)
-
fibonacii-heap
Priority queue implemeted using a Fibonacii Heap
-
enum-lexer
proc_macro lexer generator. using
enum
-like syntax. -
librsb-sys
FFI interface for librsb
-
cuckoo
search algorithm
-
traversal
Generic and lazy tree traversal algorithms
-
nefsm
state machine library for Rust
-
basic_dsp_interop
Digital signal processing based on real or complex vectors in time or frequency domain
-
nummap
Defines a wrapper around a
HashMap
of number values which behaves as if ALL keys are mapped but0
values are not stored -
scales
converting values between scales
-
baseperm
generating valid permutations of encoded inputs
-
vrp-core
core algorithms to solve a Vehicle Routing Problem
-
markov-flow
Graph analysis utilizing (adjacency) matrix calculations based on flows through a Markov chain
-
kvarn-search
Search engine extension for Kvarn
-
astar
generic implementation of the A* pathfinding algorithm
-
mix-distribution
Mixture distributions
-
shtring
Split an input string into arguments by whitespace such that text between matching quotes is combined into a single argument
-
py-fossil-delta
functions for calculating differences between strings and applying calculated deltas
-
redblackbst
Algorithms
-
flo_binding
Declarative binding library for Rust
-
mow
Multiple errors collector
-
rusty-matrix
generic matrix implementation
-
perlin
lazy, zero-allocation and data-agnostic Information Retrieval library
-
lazy_transducer
Lazy, parallel, indexable, generic data iterators
-
reservoir-sampler
trait API that A sampler using the Reservoir algorithm should implement
-
spiral
Iterate over a 2D structure in a spiral pattern
-
gpt-partition-type
getting information about a GPT partition from its partition type GUID
-
serp
Friendly (s)tring int(erp)olation wrapper for handlebars library
-
graph_safe_compare
Equivalence predicate that can handle cyclic, shared, and very-deep graphs
-
ritehash
tiny, fast, zero-dep and no_std fxhash fork. More up to date.
-
alea
randomness
-
cl-generic-read-buf
ReadBuf implementation based on cl-generic-vec
-
rustmex_core
Rustmex libary with core functionality
-
tempergb
Convert a color temperature to RGB values
-
f01
float in range 0-1
-
quilt_partition
union-find/disjoint-sets algorithm (part of the quilt project)
-
array_math
Compile-time math operations on arrays
-
kindness
Methods for returning random elements from an iterator
-
buckets
O(n) integer sort
-
dl_uuid
Universally unique identifier generator
-
autom
Automaton
-
resistor
calculating the resistance of a resistor based on the color bands
-
readext
Extensions for the standard Read trait
-
den
general delta encoded network difference algorithm
-
elm-solve-deps
dependency solver for the elm ecosystem
-
minterpolate
Data set interpolation for mint primitives and raw arrays
-
sparse_table
SparseTable Struct / ST表数据结构
-
guile-sys
Low-level bindings to GNU Guile
-
gt-directed-bijective-connection-graph
implimentation of a directed bijective connection graph
-
heterogeneous_graphlets
computation of heterogeneous graphlets
-
tiny-rng
Tiny RNG, a minimal random number generator
-
m4ri-sys
Bindings to m4ri
-
primetools
prime iterator and sieve
-
gt-graph
base crate for a gtaph theory
-
aflak_cake
Computational mAKE: Manage a graph of interdependent functions
-
fast_set
set of usize with O(1) creation, add, remove, contains, and clear functions
-
pollard-p-minus-one
Pollard's p-1 factoring algorithm
-
rlp-iter
iterator following a space-filling pattern over a given range
-
euphony-graph
parallel graph computation framework
-
fixed-array
Fixed-size array
-
watchmaker
genetic algorithm implementation in Rust
-
chargrid_test_grid
chargrid frontend that renders to an in-memory buffer for use in tests
-
deterministic-finite-automaton
generic implementation of a deterministic finite automaton
-
fuzzed-data-provider-rs
that you can use in order to consume fuzz binary data and shape them into structured values
-
cgmatrix
matrix library for computer graphics in Rust
-
libpuri
Idiomatic Rust Competitive Programming Library
-
thunk_simple
alternative to the
thunk
crate’s lazy evaluation types -
vecfx
Extra batteries for a vec of floats
-
num-cmp
Comparison between differently typed numbers
-
vec-btree-map
Basically just a sorted Vec that can be used as a HashMap
-
streemap
Set of tree map algorithms (binary, squarified, ...)
-
nebula-fbthrift-meta
Nebula Graph meta interface
-
gossip
generic gossip library that uses gossip-based peer sampling
-
ukanren
µKanren, a featherweight relational programming language
-
ncollide2d-updated
2 and 3-dimensional collision detection library in Rust. Will be superseded by the parry2d crate.
-
stack_croaring
wrapper for CRoaring
-
gurobi
unofficial Rust API for Gurobi optimizer
-
is_close
Determine whether floating point numbers are close in value
-
ndarray-utils
ndarray utilities
-
stable_matching
Gale-Shapley stable matching algorithm
-
sparse_graph
Sparse graph algorithms
-
dfp-number
Decimal floating point arithmetic for Rust based on bindings for Intel(R) Decimal Floating-Point Math Library v2.2
-
step-machine
Run your CLI program as state machines with persistence and recovery abilities
-
cauchy
Trait for real and complex numbers
-
competitive-hpp
Competitive Programming Library for AtCoder with Rust
-
probs
Statistics toolkit
-
fsm-rust-jb
FSM (with effects, like Mealy machine) implementation in Rust
-
romu
pseudo random number generator using the Romu algorithm
-
numeric-sort
zero-allocation, human-readable sorting library
-
str_sim
Calculate the similarity between strings
-
number-encoding
Combinatorial and factorial number systems
-
ran
fast random numbers generation
-
caffe2op-glu
xxx
-
gndr_rust
Uses advanced techniques and algorithms to determine the gender of a user by just fucking asking them
-
fsm
Finite State Machine library, provide State and Event types, then create a machine with an initial state, give it some transition behaviours and you have your state machine!
-
matrix-mc
some useful matrix and vector operations performed on 2D Vecs of f64s
-
fxhash
fast, non-secure, hashing algorithm derived from an internal hasher used in FireFox and Rustc
-
rust-phone-number-geo
中国境内手机号码归属地查询
-
basic-hll
basic HyperLogLog algorithm
-
midas_rs
lib port of MIDAS (Microcluster-Based Detector of Anomalies in Edge Streams)
-
lindel
Hilbert and Morton encoding and decoding; in a word, linearising and delinearising
-
rscompress-coding
data coding supporting rscompress
-
audiograph
audio graph optimised for performance and limiting runtime allocations
-
window-sort-iterator
iterator adapter that sorts items within a sliding window
-
midpoint_circle
midpoint circle algorithm
-
sliding_dft
Sliding DFT
-
dsalgo
package for Datastructures and Algorithms
-
sark_pathfinding
astar pathfinding algorthim from red blob games https://www.redblobgames.com/pathfinding/a-star/implementation.html
-
pluum
very sweet
-
quad3
quadtree implementation in Rust
-
sliding-window-aggregation
Sliding window aggregation
-
simple_nn
nueral network library
-
mop-adapters
Solver adapters for MOP
-
regex-map
Associative container where the keys are regular expressions
-
delfi
Conveniently writing data to csv-files
-
refset
non-owning HashSet
-
moving-least-squares-image
Image deformation using moving least squares
-
taker
Option-like taking for everyting with a default value
-
hotsax
based discord discovery algorithms
-
mbusparse
no_std
library for parsing M-Bus telegrams -
jumpconsistenthash
Jump consistent hash i.e. 'A Fast, Minimal Memory, Consistent Hash Algorithm' from Google
-
luhn3
Luhn validation library
-
rle-bitset
no-std, no-alloc trait for querying and manipulating bits in a
[usize]
and iterating their run lengths -
algae-mmr
Algae is a collection of core algorithms and data-structures, written in Rust
-
poisson2d
Poisson disk sampling generator
-
floatconv
Floating point conversion functions
-
scs-rs
Bindings to the SCS convex optimization solver
-
moon_stats
set of statistical functions
-
fsum
calculate accurate sum of floats
-
random_tester
similar to https://www.fourmilab.ch/random/
-
comparator
Java-like Comparator type
-
simple-pagerank
calculate the PageRank of a graph
-
moon_math
Math utility functions for a variety of uses
-
unfold
in Rust
-
kahuna
basic implementation of wave-function collapse for procedural generation
-
tiamat
PRNG library
-
mushin_derive
Compile-time creation of neural networks
-
indented-blocks
parser for indented blocks
-
ord-by-set
providing a weakly ordered multi-set with compile-time configurable ordering scheme
-
bravery_router
Radix Tree implementation
-
get_move
Index-like operations that returned owned values
-
bevy_rapier3d
3-dimensional physics engine in Rust, official Bevy plugin
-
asearch
Approximate pattern matching on Rust
-
porco
Composable probability distributions
-
extsort-lily
efficient external merge sort implementation
-
fixit
Converts infix (human-readable) expression tokens into postfix (Reverse Polish Notation) order
-
mesh-rand
methods of generating random points on the surface of 3d models
-
rustmt
MT19937 PRNG implementation for rust
-
double-ended-peekable
adapter providing peeking features to double-ended iterators
-
weighted_levenshtein
Generic implementation of Levenshtein distance allowing arbitrary weighting of operations
-
prefix_sum
prefix sum data structure
-
enso-generics
supporting generic programming
-
regenerator
Fuzzer/RNG seeded generation of arbitrary regular expressions
-
osqp-rust
OSQP (Operator Splitting Quadratic Program) solver
-
is_42
blazingly fast way of checking if a variable is equal to 42
-
plumtree
algorithm
-
alg-seq
containing implementations for algorithms introduced in the AlgSeq lecture at university of Kiel
-
abc
Karaboga's Artificial Bee Colony algorithm
-
alg_ds
Algorithms & data structures
-
rs_concaveman
wrapper for concaveman-cpp
-
algorithmica
Algorithms
-
hampel
Sequential outlier detection and removal using Hampel identifiers
-
onemax-oxigen
OneMax simple problem resolution using oxigen
-
uncertain
Fast and correct computations with uncertain values
-
base24
in Rust
-
faststd
Moved to
fstd
(https://crates.io/crates/fstd) -
spatium
Spatium. Calc distance between sequences.
-
f8
It's a float! It's a unorm! It's only one byte!
-
kissat
wrapper for the Kissat SAT solver
-
fhash
Blazingly fast hash for HashMaps in Rust
-
cavalier_contours
2D polyline/shape library for offsetting, combining, etc
-
sort-by-borrowed-key
Adds two convenience methods for sorting by a borrowed key
-
queue-model
Abstraction of the concept of a queue
-
permut_lib
function to generate permutations on a dictionry of a u8 chars set. I used it for generate unic Items into my proc macros.
-
mat32
matrix 3x2
-
rustdct
Compute Discrete Cosine Transforms (DCT) of any size in O(nlogn) time, in pure Rust
-
bidivec
offering bidimensional arrays, vectors and slices, with batteries included (such as pathfinding, flood-filling and more)
-
trassel
Unique ID integers that scale
-
tinymatrix
small library to operate with some linear algebra functions
-
tlsh
port of Trend Micro Locality Sensitive Hashing
-
ez-bitset
bitset implementation
-
geo-types
Geospatial primitive data types
-
fullcodec-jubjub
Dusk's fork of the implementation of the Jubjub elliptic curve group
-
langis
signal is a structure that can yield an infinite amount of data. The API is very similar to
std::iter::Iterator
but with the assumption that it will never end. -
guuid
Globally Universally Unique Identifier
-
cublas-sys
Safe CUDA cuBLAS wrapper for the Rust language
-
pex-trie
parser combinator library for Rust
-
graph-neighbor-matching
Graph similarity score using neighbor matching
-
symbol-map
Memory-efficient mapping from values to integer identifiers (AKA a lexicon or symbol table), with options for fast bidirectional lookup
-
t1ha
T1AH (Fast Positive Hash) hash function
-
asura
in Rust
-
nanny-sys
Exposes Node and V8 C++ API's for use by nanny
-
parser-pda
Example of a simple parser pushdown automaton implementation
-
selfsimilar
fast generator of discrete self similar random numbers
-
elements-frequency
Finds the frequency of elements in a list
-
beap
Bi-parental heap data structure implementation in Rust
-
rs_state_machine
business-oriented state machine library
-
aristeia
evolutionary computation library
-
algorithms-edu
Algorithms for pedagogical demonstration
-
drunken-diver
Implements an algorithm inspired by the Drunken Bishop algorithm
-
numext-constructor
Fixed-size uint and hash constructor
-
str-distance
Distance metrics to evaluate distances between strings
-
text_converter
trait that helps with manipulating text
-
distance
collection of approximate string matching algorithms
-
cplib
minimal algorithms for competitive programming
-
hash_avatar
rust生成随机头像的库
-
weighted-median
Calculate the weighted median
-
pack
Solver for packing puzzle
-
adversarial_search
adversarial search library
-
pruefung
Checksums in pure Rust, with no_std available, implementing the Hasher trait
-
schindel
min-shingle hashing
-
statest
statistical test
-
bft-core
efficient and stable Rust library of BFT core for distributed system
-
randlib
Dependency-less random value generator using pointer addresses and time
-
stack
DSTs and arrays on the stack!
-
simplex_method
optimisation in linear programming using simplex method
-
geo-rand
Generate random geometric shapes
-
spatial-neighbors
certain Spatial-Partitioning Algorithms | DataStructures
-
call-fsm
callback based, finite state machine handler
-
cowonverter
owo-ify text files. provides a simple function for this purpose.
-
alea-js
port of the javascript alea rng
-
dotty
generating DOT graph files
-
numext-fixed-uint-core
internal crate used by numext-fixed-uint
-
deepmesa-encoding
collection of data structures and algorithms designed for performance
-
weighted-rs-1
libray for weighted balancing algorithm
-
functions_loop
loop ka function
-
list_comprehension_macro
macro for making Python like Vector and HashMap comprehensions
-
rusty_grammar
modified CYK algorithm to work for Language
-
byond-crc32
Fast CRC-32/BYOND checksum computation
-
algen
parallelized genetic algorithm runner
-
n18map
Manages the state of 18xx maps
-
mx3
algorithm providing a bit mixer, pseudo-random number generator, and hash function
-
ai-sys
-
endian-hasher
Endianness wrapper for Hashers
-
ophelia-hasher-keccak256
ophelia keccak256 hasher
-
framp
Fork of James Miller's Ramp, a high-performance multiple-precision arithmetic library
-
kurobako_solvers
collection of black-box optimization solvers
-
ranged
Implements math operators for ranges of numbers
-
introsort
Fast sorting compatible with #[no_std]. Also has (optional) support for efficient and robust sorting of floating point numbers. Currently, introsort only builds on nightly
-
int_ranges
ranges tools for integer
-
rex-regex
pedestrian library for regular expressions: Slow, but easy to understand
-
minutae
Cellular Automata-esque simulation engine involving a 2D universe populated by cells and entities
-
robust-binary-search
Robust Binary Search provides a binary search implementation which is robust against errors during the search
-
lyon_algorithms
2D Path manipulation/transformation algorithms
-
griditer
Contains a couple of iterators for implementing 2D grid based algoritms
-
mathml-latex
Convert between MathML and LaTeX
-
dahl-partition
efficient representation of a set partition
-
radixal
Digits iteration for unsigned integer types
-
tilemap_astar
dependencyless astar implementation
-
fast-dhash
fast rust implementation of the perceptual hash dhash
-
netlib-provider
package provides BLAS and LAPACK using the Netlib implementation
-
constfft
providing an FFT API for arrays
-
fuzzy-filter
fast implementation (O(n)) of fuzzy-filtering
-
mycrc
Create your own cyclic redundancy check (CRC)
-
RustQuant
quantitative finance
-
permutations_iter
Generate permutations iteratively without recursion in O(n) time
-
simple_gaussian
Some quick and easy functions for generating gaussian noise, mappable to specific bounds. Useful for artistic purposes.
-
drain_at_sorted_unchecked
Terribly unsafe but highly efficient function that allows removing items from a vector with few moves
-
linear_solver
linear solver designed to be easy to use with Rust enum expressions
-
openraft-rocksstore-compat07
example v07 compatible implementation of the
openraft::RaftStorage
trait -
cutter
usefull functions for parsing text. Used for cutting between strings.
-
gaps
Functionality for working with gaps/holes in ordered sequences of values
-
fasthash
suite of non-cryptographic hash functions for Rust
-
polysplit
Algorithm that allows to split polylines into segments by the defined list of points not necessary belonging to the polyline
-
zero85
ZeroMQ's base85 algorithm
-
all_shortest_path
Floyd-Warshall algorithm implementation
-
grid_search_cardinal
Collection of search algorithms for uniform-cost cardinal grids
-
xalg-bin
Random formula generator
-
biterate
API for Gurobi optimizer
-
primitive_traits
Traits over primitive types. Particularly stuff not covered by num-*.
-
gut
Geometry utilities: storing, manipulating and processing geometries
-
integer_scaling
IntegerScaling wrapper for those who prefer snake_case
-
raft-consensus
Raft consensus algorithm implementation
-
cppn
Compositional Pattern Producing Networks
-
ccl-fxhash
fast, non-secure, hashing algorithm derived from an internal hasher used in FireFox and Rustc. This is a fork designed for use with ccl. Rights go to the original creator.
-
vertical-multiplication
Vertical multiplication step by step
-
strider
ringbuffer operations on multiple values at once with an efficient implementation. useful for moving a window with variable step through a possibly infinite stream of values while avoiding unnecessary memory allocations
-
advanedresearch-trinoise
mathematical noise pattern of 3 values based on Number Theory and Set Theory
-
ojo_partition
union-find/disjoint-sets algorithm (part of the ojo project)
-
phreak_engine
Rule matching algorithm focussed on speed
-
nohash-hasher
std::hash::Hasher
which does not hash at all -
crc24
CRC-24 implementation (IETF RFC2440-compatible)
-
cdivsufsort
bindings for Yuta Mori's divsufsort
-
rl-bandit
multi-armed bandit implementation
-
integer-cbrt
integer cube root algorithm for primitive rust types
-
eater_rangeset
work with set's of ranges
-
kd-tree-rs
k-d tree
-
faker_rand
Fake data generators for lorem ipsum, names, emails, and more
-
checksum
Calculates crc32/crc64 file checksums written in Rust
-
cityhash-sys
binding of Google CityHash algorithm
-
generic_levenshtein
Generic and fast implementation of the Levenshtein distance
-
retworkx-core
APIs used for retworkx algorithms
-
fxtypemap
fast type map based on internal hasher used in Firefox and Rustc
-
linear-ip
Linear Primal Dual Solver Using the the Interior Point Method
-
patmatch
configurable pattern matching / wildcard matching library
-
algo
Algorithms & Data Structure implementations
-
leetcode_for_rust
leetcode for rust
-
microfft
Embedded-friendly Fast Fourier Transforms
-
crc32c-hw
Hardware-accelerated (SSE 4.2) implementation of CRC32C with software fallback
-
hilbert_curve
Hilbert curve mapping algorithms in Rust
-
prng_mt
Mersenne Twister PRNG in Rust
-
mag
Physical quantities and units
-
bin-tree
Building Binary Tree
-
kdtree-rust
KDTree
-
simdutf8
SIMD-accelerated UTF-8 validation
-
argon2-async
async wrapper for the argon2 crate
-
learn_rust_together
Curated collection of lists of useful resources to learn Rust together
-
dihardts_cstools
Collection of data structures and algorithms
-
index-fixed
convert slices into arrays using indexes ([T] -> [T;N])
-
libraft
raft implementation in rust
-
convute
Conversion between types with overlapping valid bit patterns and arrays, vecs and slices of those values
-
urandom
Produce and consume randomness, to convert them to useful types and distributions, and some randomness-related algorithms
-
zero-copy-pads
Padding/aligning values without heap allocation
-
geph4-aioutils
geph4
-
lev_distance
copy of Levenshtein distance implementation from Rust Compiler
-
spaced-repetition-rs
spaced repetition algorithm based on anki and supermemo
-
twox-hash-cli
cli for the twox-hash crate
-
czt
package provides an algorithm to compute the chirp Z-transform
-
genetic_optimization
solving optimzation problems with a genetic algorithm
-
apriltag-nalgebra
Conversion from/to nalgebra crate types for apriltag
-
int
Integer traits
-
caffe2op-sparsenormalize
xxx
-
bevy_spatial
tracking bevy entities in spatial indices
-
oshash
https://pypi.org/project/oshash/ in Rust
-
stackbt
small collection of crates for game AI
-
libpermute
no_std
compatible library that provides a function to permute the items of a slice -
rustgym-testcpp
rustgym cpp solutions
-
algo_no_std
Some algorithms library. ref: ISBN978-7741-9690-9
-
simple_random_numbers
random number generator that can create pseudo_rand() or entropy_rand() numbers
-
heapify
Convenience functions to turn slices into max-heaps
-
permutation-generator
direct permutation generator
-
ecos-rs
Bindings to the ECOS convex second-order cone program solver
-
caffe2-random
xxx
-
rand_krull
Krull64/65 random number generators
-
rs-graph-derive
Automatic implementation of graph types
-
bitset-fixed-utils
bunch of utility stuffs that I use when working with bitsets in Rust
-
tousize
helper trait to convert values into usize
-
fp-growth
algorithm in pure Rust
-
noise_rs
perlin and simplex noise implementation in 2d and 3d
-
squirrel3-rs
reliable random number generator
-
fletcher-simd
SIMD implementation of the Fletcher's checksum algorithm
-
closure_calculus
Closure Calculus
-
mona
Transform nested container types
-
yield-iter
Safe implementation of the
Iterator
trait forGenerator
-
autosat
Automatic conversion of functions to CNF for SAT solving
-
shannon
cipher implementation
-
ordmap
map ordered by value
-
jandom
Port of java.util.Random
-
but-what-about
permutation & combination calculation crate for rust
-
acacia
spatial partitioning and tree library
-
mop-solvers
Solvers for MOP
-
hexf-parse-libm
Parses hexadecimal floats (see also hexf)
-
algorithms
most common algorithms
-
arbor
generic interface to the Monte Carlo Tree Search algorithm
-
ex3-merkle
most advanced Merkle Tree library for Rust. Supports creating and verifying proofs, multi-proofs, as well as advanced features, such as tree diffs, transactional changes, and rollbacks
-
championship
Generate championship fixtures using the round-robin tournament algorithm
-
triangulation
collection of triangulation algorithms
-
basic_dsp
Digital signal processing based on real or complex vectors in time or frequency domain
-
narcissistic
number searcher
-
sdbm
non-cryptographic hashing algorithm
-
rustiny_linear_algebra
tiny linear algebra
-
jumpch
Jump Consistent Hashing is a fast, minimal memory, consistent hash algorithm
-
falcon-z3
bindings for z3 and Falcon
-
bktree
BK-tree datastructure
-
index-utils
working with indices
-
genetic-algorithm-tsp
Using genetic algorithms to solve Traveling salesman problems
-
checked_int_cast
Conversions between primitive integers with overflow and underflow checking
-
bruteforce
no_std-compatible brute force/string generation rust-nightly library
-
rust-selfsimilar
fast generator of discrete self similar random numbers
-
find-affine
Find affine transformation for a pair of three points
-
ed2
Encode and Decode traits
-
ngrams
Generate n-grams from sequences
-
wildflower
Wildcard matching against strings
-
redfa
Regular expression derivatives for creating DFAs
-
compute-float
Computes floating point numbers using Eisel-Lemire algolithm
-
lcs
computing longest common subsequences and diffs
-
scour
fuzzy search algorithm
-
iris-lib
that creates color palettes from images using the median cut algorithm
-
best
getting the best value of a sequence with an associated value
-
crc32fast
Fast, SIMD-accelerated CRC32 (IEEE) checksum computation
-
vecxd
X-dimensional vector library
-
rust-algorithm
algorithm
-
fxsm
state machine procedural macro for enums
-
plonk-bls12_381
Fork of the implementation of the BLS12-381 pairing-friendly elliptic curve construction with some extra tooling needed by the Dusk team
-
r30_rs
psuedo-random bit generator in Rust implemented with the Rule-30 elementary cellular automata
-
badsort
Some basic sorting stuff I wrote as practice in Rust. Includes my favorite algorithm, BOGO Sort!
-
reservoir-sampling
Implementations of a variety of algorithms for reservoir sampling in Rust
-
float01
float in range 0-1
-
cpulimiter
user-space CPU limiter crate
-
caffe2op-percentile
xxx
-
xxtea
encryption algorithm library
-
analytic
has been renamed to be the math crate https://crates.io/crates/math
-
fastcmp
fast byte slice comparison library
-
rustproof
Compiler plugin to generate verification conditions from Rust code
-
util-cursor
cursor implementation for reading data from array slice
-
miniphf
Fast and simple builder for PTHash PHF hash maps
-
kappendlist
Append to a growable list in O(1) without needing &mut
-
sortrs
introspective sort implementation
-
fingles
hash-based text similarity analysis
-
rustmex_separated_complex
Rustmex libary with implementations for separated complex numeric arrays
-
source
alternative to rust iterators
-
ordslice
Extensions for ordered slices
-
curve-trees
Curve Trees Implementation
-
prefix-tree
map and set interfaces using trie data structure
-
const-murmur3
const fn implementation of the murmur3 hashing algorithm
-
markovr
Higher-order Markov Chains
-
watto
parsing and serializing Plain Old Data
-
iobuffer
memory-based buffer for IO reading and writing
-
simple_permutator
create permutations of a list of values. Eg Permutator::new(&[1,2,3]) creates an iterator that yields [1,2,3], [2,1,3], [2,3,1], [1,3,2], [3,1,2], [3,2,1]
-
ivory_kinematics
Kinematics library for Project Ivory
-
iter-group
grouping (key,value) iterators into maps of collections
-
dists
2d distribution generator
-
bcmp
offers fast binary data comparison algorithms to enumerate common substrings, unique substrings or determine a patch set
-
unordered-hash
Hashes a set of items independent of their ordering
-
gkquad
Numerical integration library for Rust
-
octree
algorithm for nearest neighbor search in 3D space
-
autobahn-hash
HighwayHash, a fast and strong SIMD hash function
-
integer-hasher
std::hash::Hasher
which does not hash at all -
geo-visibility
Compute visibility polygon
-
wy
wyhash algorithms
-
noice
Fork of noise-rs, a procedural noise generation library
-
xoroshiro128
Fast psuedo-random number generators
-
index-sort
Sort containers by index using user-specified swap and compare functions
-
phos
regex-like pattern matcher/permutation generator
-
untyped_vec
type-erased vector type for Rust
-
Algod
Many types of rust algorithms and data-structures
-
const-linear
linear algebra library based on const generics
-
bs
bitset with small-set (single-word) optimization
-
txtdist
mesuring the distance between texts
-
temporary
package provides means of managing temporary files and folders
-
libnzprimes
Provide and maintain a list of prime numbers from 2 to what you need. Slow algorithm suited for the primes number below 1000000.
-
pmsa
Parallel Mergeing of two Sorted Arrays
-
state_machine
state machine
-
number_easing
number easing functions
-
finite-state-automaton
minimal DFSA implementation based on Jurafsky & Martin (2009)
-
checksum-tapestry
Collection of checksum algorithms and examples
-
memoires
Memoization for Rust
-
sprs-rand
Random sparse matrix generation
-
fd-oxigen
Fast Downward planner parameters optimization using oxigen
-
randsort
sorting library with an optimal complexity of O(n) (!!) by randomly sorting Vectors until they are sorted
-
hamming-heap
Amortized constant time min heaps for binary features in nearest neighbor searches
-
limited_direction
Find path to any direction and distance but with limited directions
-
rink-core
Unit conversion library behind rink
-
lcg-rand
Lightweight open source random number generator using the Linear Congruential Generator algorithm
-
prototty_test_grid
Prototty frontend that renders to an in-memory buffer for use in tests
-
slot_generator
Efficiently generate and reclaim slot IDs from a numerical range
-
mersenne_twister
Mersenne Twister pseudorandom number generator
-
asker
Smoothly get and check user input
-
bisection
Python bisect module
-
nucleic-acid
Implementations of Suffix Array, Burrows-Wheeler Transform and FM-index
-
fifo-set
FIFO queue with unique elements
-
rand_isaac
ISAAC random number generator
-
tonemap
collection of tonemapping algorithms
-
dsa_sport
revision material for undergrads
-
gt-hypercube
implimentation of hyper cube
-
behrens-fisher
Find the difference of the means of two Normal distributions
-
accelerate-provider
package provides BLAS and LAPACK using Apple’s Accelerate framework
-
scalar
trait for scalars (integers and floats)
-
moving-least-squares
Image deformation using moving least squares
-
static_linear_algebra
static linear algebra library where size compatibility of operations are checked at compile time
-
fera-graph
Graph data structures and algorithms
-
string_table
speedy String-based HashMap
-
train-map
Trained HashMap
-
math_lib_test
test Library for rust
-
fasthash-sys
suite of non-cryptographic hash functions for Rust
-
rand_seeder
universal random number seeder based on SipHash
-
reachability_solver
linear reachability solver for directional edges
-
roulette
efficient implementation of roulette wheel selection
-
xxhash-c
Safe wrapper to xxhash
-
buf_redux
Drop-in replacements for buffered I/O in
std::io
with extra features -
sort-rs
exposing sorting algorithms
-
wyrand
fast & portable non-cryptographic pseudorandom number generator
-
quadtree-f32
dependency-free ID-based quadtree
-
wordfeud-solver
evaluate all possible moves given a wordfeud board and rack
-
geph-nat
concurrent NAT thingy used throughout Geph
-
jp_partition
union-find/disjoint-sets algorithm (part of the jp project)
-
integral-exponential-polynomial
Integral exponential polynomial
-
pin-convert
Traits for converting to
Pin
variants -
cinnabar
graph algorithms and data strctures
-
sd-rs
Standard Deviation Over Period (SD) implementation in Rust
-
arr
heap based fixed-sized array
-
line_dist
distance formula is used to calculate distance between two points in Rectangular Co-ordinate System
-
aoc-next
Helper library for Advent of Code. Inspired by cargo-aoc.
-
tenthash
robust 160-bit non-cryptographic hash function
-
quickxorhash
Fast implementation of QuickXorHash in Rust
-
srand
Random number generators and other randomness functionality with simple apis to use
-
pocket_prover-set
base logical system for PocketProver to reason about set properties
-
iscc-rs
ISCC specification
-
revec
Convert a Vec<A> to a Vec<B> provided vec is empty
-
nd_matrix
n-dimensional matrix type
-
entwine
Generic slice-like interface for operating on multiple slices at the same time
-
xias
Explicit numeric type conversions
-
verhoeff
algorithm, for number checksums
-
rotated-array-set
ordered set supporting O(1) rank and O(√n) inserts and deletes
-
basic_stochastics
small collection of utilities to make performing basic stochastic calculations more convenient
-
mat3
matrix 3x3
-
fdlibm-rs
wrapper of FDLIBM, a C math library for machines that support IEEE-754 floating-point arithmetic
-
securerand
create that extends getrandom to harden the entropy and provide a more useful api
-
rscompress-checksums
data checksums supporting rscompress
-
hash-match
Optimized pattern matching alternative
-
randnums_win
generate some random positive integers and copy to clipboard
-
cvi-rs
Chaikins Volatility (CVI) Implementation In Rust
-
n18hex
Defines the geometry of hexagonal tiles for 18xx
-
xbitwise
that extends the basic functionality of bitwise operations
-
ordered_vec
trait that ensures that elements in a vector are pushed in a sorted order (both ascending and descending)
-
polytope
Data structures and methods for constructing polytopes
-
sortnet
Sorting Networks for Rust
-
ceres-solver-sys
Unsafe Rust bindings for the Ceres Solver
-
lionel-says-hello
testing
-
id-set
bitset implementation that stores data on the stack for small sizes
-
numext-fixed-hash-core
internal crate used by numext-fixed-hash
-
threed-ice-sys
package provides bindings to 3D-ICE
-
sac
macro for constructing collections
-
luhnmod10
Fast and simple in-place implementation of the luhn (mod 10) algorithm
-
rust_hamming_distance
Hamming distances and bitwise hamming distances
-
gt-ltq
solve path graph theory problems on an ltq
-
latestmap
latest map
-
libcw
Core Wars runtime and parser
-
vec_arith
Powerful vector/matrix arithmetic library written in Rust
-
weresocool_ring_buffer
ring_buffer for WereSoCool
-
strtools
containing various string utilities
-
custom_enum_traits
set of traits for dealing with enums
-
malwaredb-lzjd
LZJD algorithm by Edward Raff -- https://github.com/EdwardRaff/jLZJD
-
tiny_tco
tiny dirt simple no_std tail call optimization library
-
spelling
spellchecker using the Levenshtein distance as the heuristic for distance
-
digits_iterator
Iterate over the digits of numbers in an arbitrary radix
-
genfsm
generic finite state machine library
-
array_windows
finding the minimum or maximum n values from an iterable
-
uwurandom-rs
no-std library to generate uwurandom
-
simple-string-builder
Super basic string builder based on my memory of Javas
-
sharded-counter
fast and concurrent counter
-
bbhash
bindings for BBHash
-
nphysics2d
2-dimensional physics engine in Rust. This crate is being superseded by the rapier3d crate.
-
stacked-sandwich
Find all occurances of a number in a row/column sorted matrix; in square root of linear time!
-
cavalier_contours_ffi
C foreign function interface for the cavalier_contours crate
-
simple-vectors
dimension generic vector math
-
fibonacci-like
small crate to help you interact with second order sequences, such as the Fibonacci sequence, with no_std support
-
gvc-sys
graphviz rust bindings
-
heapp
Some heap operations on slice
-
indexed_bitvec_core
Core operations on indexed bitvectors including (hopefully) fast rank and select operations
-
zapper
lightning fast templating engine
-
identity-hash
std::hash::Hasher
which does not hash at all -
rs-kdbush
very fast static spatial index for 2D points based on a flat KD-tree
-
paragraph
package provides a line-breaking algorithm
-
bool_expr_parser
Boolean expresion parser and evaluation library
-
editdistancewf
Compute the edit-distance between vectors using the Wagner-Fischer algorithm
-
highhash
High-speed hashing algorithms for Rust
-
closed01
checked floating point operations within the range [0,1]
-
rust_clue_solver_2
way to figure out a clue game more easily
-
truetree
Trees in Rust
-
sfmt
SIMD-oriented Fast Mersenne Twister (SFMT)
-
grid_search_cardinal_distance_map
Grid where each cell stores the distance from a set of interesting points to each cell in a uniform-cost cardinal grid
-
dary
double-array construction and search functions
-
sacabase
Base types and functions for suffix arrays and longest substring search
-
index_key
lexicographic sort order encoding
-
KLPhash
small hashing fn library - str -> u32
-
intern-str
Efficient, compile-time string interning for Rust
-
array_builder
example for the ArrayBuilder RFC
-
pushy
pushable stack-allocated buffer