-
rand
Random number generators and other randomness functionality
-
fastrand
fast random number generator
-
crc
support of various standards
-
twox-hash
XXHash and XXH3 algorithms
-
strsim
Implementations of string similarity metrics. Includes Hamming, Levenshtein, OSA, Damerau-Levenshtein, Jaro, Jaro-Winkler, and Sørensen-Dice.
-
bytecount
count occurrences of a given byte, or the number of UTF-8 code points, in a byte slice, fast
-
xxhash-rust
xxhash
-
ahash
A non-cryptographic hash function using AES-NI for high performance
-
noise
Procedural noise generation library
-
fnv
Fowler–Noll–Vo hash function
-
stacker
A stack growth library useful when implementing deeply recursive algorithms that may accidentally blow the stack
-
rustfft
High-performance FFT library written in pure Rust
-
uint
Large fixed-size integer arithmetic
-
siphasher
SipHash-2-4, SipHash-1-3 and 128-bit variants in pure Rust
-
rstar
An R*-tree spatial index
-
kiddo
A high-performance, flexible, ergonomic k-d tree library. Ideal for geo- and astro- nearest-neighbour and k-nearest-neighbor queries
-
dissimilar
Diff library with semantic cleanup, based on Google's diff-match-patch
-
crc-any
To 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.
-
ulid
a Universally Unique Lexicographically Sortable Identifier implementation
-
ff
building and interfacing with finite fields
-
wildmatch
string matching with single- and multi-character wildcard operator
-
highway
Native Rust port of Google's HighwayHash, which makes use of SIMD instructions for a fast and strong hash function
-
passwords
useful tools to generate multiple readable passwords, as well as analyze and score them
-
GSL
binding for the GSL (the GNU scientific library)
-
rand_hc
HC128 random number generator
-
pathfinding
flow, and graph algorithms
-
fallible-iterator
Fallible iterator traits
-
md5
The package provides the MD5 hash function
-
realfft
Real-to-complex forward FFT and complex-to-real inverse FFT for Rust
-
task-local-extensions
Task-local container for arbitrary data
-
oorandom
A tiny, robust PRNG implementation
-
ndarray-linalg
Linear algebra package for rust-ndarray using LAPACK
-
nanorand
A tiny, fast, zero-dep library for random number generation
-
robust
adaptive floating-point predicates for computational geometry
-
streaming-iterator
Streaming iterators
-
crc32c
Safe implementation for hardware accelerated CRC32C instructions with software fallback
-
levenshtein
algorithm
-
stringprep
algorithm
-
ena
Union-find, congruence closure, and other unification code. Based on code from rustc.
-
seahash
A blazingly fast, portable hash function with proven statistical guarantees
-
strength_reduce
Faster integer division and modulus operations
-
yada
double-array trie library aiming for fast search and compact data representation
-
rustfst
constructing, combining, optimizing, and searching weighted finite-state transducers (FSTs)
-
fastcdc
(content defined chunking) in pure Rust
-
sgp4
A pure Rust implementation of the SGP4 algorithm for satellite propagation
-
medians
Median, Statistical Measures, Mathematics, Statistics
-
nucleo
plug and play high performance fuzzy matcher
-
gcd
Calculate the greatest common divisor
-
rand_jitter
Random number generator based on timing jitter
-
topological-sort
Performs topological sorting
-
slice-group-by
Iterators over groups in slices and strs
-
rand_mt
Reference Mersenne Twister random number generators
-
reed-solomon-novelpoly
reed solomon code / encoder / decoder with complexity
O(n lg(n))
-
rand_regex
Generates random strings and byte strings matching a regex
-
zipf
A fast generator of discrete, bounded Zipf-distributed random numbers
-
graph
high-performant graph algorithms
-
argminmax
(argmin & argmax in 1 function) with SIMD for floats and integers
-
treediff
Find the difference between arbitrary data structures
-
murmur3
hash
-
gix-filter
gitoxide project implementing git filters
-
sketches-ddsketch
A direct port of the Golang DDSketch implementation
-
buffer-redux
Drop-in replacements for buffered I/O in
std::io
with extra features -
crevice
Create GLSL-compatible versions of structs with explicitly-initialized padding
-
timsort
modified MergeSort used in Python and Java
-
whisper-rs
Rust bindings for whisper.cpp
-
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
-
raft
language implementation of Raft algorithm
-
z3
High-level rust bindings for the Z3 SMT solver from Microsoft Research
-
simd-adler32
A SIMD-accelerated Adler-32 hash algorithm implementation
-
earcutr
port of MapBox's earcut triangulation code to Rust language
-
memx
memory functions like libc memcmp(), memchr(), memmem(), memcpy(), memset()
-
tantivy-fst
tantivy-specific fork from the fst crate from Burntsushi. (Please use the fst crate instead.)
-
ddo
generic and efficient framework for MDD-based optimization
-
kd-tree
k-dimensional tree
-
hexf-parse
Parses hexadecimal floats (see also hexf)
-
halfbrown
Multi backend HashMap for higher performance on different key space sizes
-
daachorse
Double-Array Aho-Corasick
-
hime_redist
Redistributable runtime library for parsers generated with Hime (LR, RNGLR)
-
integer-sqrt
integer square root algorithm for primitive rust types
-
biodiff
Compare binary files using sequence alignment
-
chalk-recursive
Recursive solver for the Chalk project
-
k
kinematics
-
rust-spice
WOW! The complete NASA/NAIF Spice toolkit is actually usable on Rust
-
oci-spec
Open Container Initiative Specifictions in Rust
-
chalk-engine
Core trait engine from Chalk project
-
rdst
A flexible parallel unstable radix sort that supports sorting by any arbitrarily defined sequence of bytes
-
changeforest
Random Forests for Change Point Detection
-
resolvo
Fast package resolver written in Rust (CDCL based SAT solving)
-
opensimplex2
Port of OpenSimplex2
-
rust-stemmers
some popular snowball stemming algorithms
-
arma-rs
Arma 3 Extensions in Rust
-
cdshealpix
HEALPix tesselation
-
shapefile
Read & Write shapefiles in Rust
-
opis
rational number and matrix arithmetic
-
fakeit
Fake data generator library with 130+ functions
-
keyword_extraction
Collection of algorithms for keyword extraction from text
-
naive_opt
The optimized naive string-search algorithm
-
adler32
Minimal Adler32 implementation for Rust
-
clingo
Rust idiomatic bindings to the clingo library
-
merkle_hash
Finds the hashes of all files and directories in a directory tree
-
tau-engine
A document tagging library
-
arrow-ord
Ordering kernels for arrow arrays
-
ids_service
that allows to generate unique Ids
-
extendhash
Rust Hash Extender
-
turborand
Fast random number generators
-
float_next_after
A trait for native rust f64/f32 nextafter
-
arrow-data
Array data abstractions for Apache Arrow
-
av-metrics
A collection of algorithms for measuring audio/video metrics
-
tailcall
Safe, zero-cost tail recursion
-
fractional_index
fractional indexing
-
varpro
A straightforward nonlinear least-squares fitting library which uses the Variable Projection algorithm
-
ran
fast random numbers generation
-
kdtree
K-dimensional tree in Rust for fast geospatial indexing and nearest neighbors lookup
-
tree_iterators_rs
built to provide you with the iterators to easily work with tree data structures in Rust
-
sugar_path
Sugar functions for manipulating paths
-
unit-conversions
Various units of measurement conversions
-
levenberg-marquardt
algorithm built on top of nalgebra
-
muldiv
trait for numeric types to perform combined multiplication and division with overflow protection
-
gxhash
non-cryptographic algorithm
-
moc
made to create and manipulate HEALPix Multi-Order Coverages maps (MOCs), see https://ivoa.net/documents/MOC/
-
rs-wordle-solver
solving Wordle-style puzzles. It provides multiple guessing algorithms, as well as building blocks for implementing your own Wordle solving algorithms.
-
smawk
Functions for finding row-minima in a totally monotone matrix
-
cobs
Consistent Overhead Byte Stuffing (COBS) algorithm. COBS is an algorithm for transforming a message into an encoding where a specific value (the "sentinel" value) is not used…
-
blurhash
A pure Rust implementation of blurhash
-
transpose
transposing multi-dimensional data
-
highs
Safe rust bindings for the HiGHS linear programming solver. See http://highs.dev.
-
probability
The package provides a probability-theory toolbox
-
alphanumeric-sort
can help you sort order for files and folders whose names contain numerals
-
linestring
line string toolbox
-
idsp
DSP algorithms for embedded, mostly integer math
-
rectangle-pack
A general purpose, deterministic bin packer designed to conform to any two or three dimensional use case
-
unarray
working with uninitialized arrays
-
easy-smt
Easily interact with an smt solver as a subprocess
-
orx-priority-queue
Priority queue traits and efficient d-ary heap implementations
-
easyfft
providing an easy FFT API for arrays and slices
-
genetic_algorithms
solving genetic algorithm problems
-
quantiles
a collection of approximate quantile algorithms
-
distances
Fast and generic distance functions for high-dimensional data
-
counting_sort
Counting sort implementation for Iterators
-
mpchash
Multi-probe consistent hashing algorithm implementation
-
hmac-sha1
wrapper around the RustCrypto hmac and sha1 crates for simple HMAC-SHA1 generation
-
crunch
A packer for cramming lots of rectangles into a larger one, designed primarily with sprite packing in mind
-
libcprover_rust
Rust API for CBMC and assorted CProver tools
-
geo-clipper
Boolean operations on polygons
-
ndarray-slice
Fast and robust slice-based algorithms (e.g., sorting, selection, search) for non-contiguous (sub)views into n-dimensional arrays
-
arpfloat
Arbitrary-precision floating point library
-
boyer-moore-magiclen
fast string search algorithm implemented in Rust
-
advent-of-code
Solutions to Advent of Code
-
russcip
Rust interface for SCIP
-
macro_tools
Tools for writing procedural macroses
-
sequence-generator-rust
Customizable 64-bit unique distributed IDs sequence generator based on Twitter's ID (snowflake). Build in Rust
-
jmt
Jellyfish Merkle Tree
-
murmurhash32
murmurhash32_2
-
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.
-
jubjub
elliptic curve group
-
atomic-traits
The traits for generic atomic operations
-
cam-geom
Geometric models of cameras for photogrammetry
-
poi
A pragmatic point-free theorem prover assistant
-
probminhash
Minhash algorithms for weighted Jaccard index
-
t1ha
T1AH (Fast Positive Hash) hash function
-
ndrustfft
N-dimensional FFT, real-to-complex FFT and real-to-real DCT
-
metaheuristics-nature
A collection of nature-inspired metaheuristic algorithms
-
special
The package provides special functions
-
scru128
Sortable, Clock and Random number-based Unique identifier
-
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.
-
fuzzyhash
Pure Rust fuzzy hash implementation
-
petal-neighbors
Nearest neighbor search algorithms including a ball tree and a vantage point tree
-
reblessive
A small runtime for running deeply nested recursive functions
-
zeros
-
starlight
experimental HDL and optimizer for DAGs of lookup tables
-
liba
An algorithm library based on C/C++
-
romu
A pseudo random number generator using the Romu algorithm
-
fastnoise-lite
FastNoise Lite is an extremely portable open source noise generation library with a large selection of noise algorithms
-
const-fnv1a-hash
A #![no_std] crate for performing FNV1A-16/32/64/128 hashing on Rust stable at compile time
-
cros-libva
Safe bindings over libva
-
circbuf
A growable circular buffer for working with bytes
-
smolprng
A Small and Extensible PRNG written in Rust
-
static_aabb2d_index
Fast static spatial index data structure for 2D axis aligned bounding boxes
-
instant-distance
Fast minimal implementation of HNSW maps for approximate nearest neighbors searches
-
timely
A low-latency data-parallel dataflow system in Rust
-
interp
Matlab's interp1 function
-
rsc_osrm
rust wrapper for osrm, folk from TehGoat/rs_osrm
-
ltp
Language Technology Platform For Rust
-
snarkvm-console-algorithms
Console algorithms for a decentralized virtual machine
-
sets
Generic vectors as sets. Efficiently sorting, merging, ranking, searching, reversing, intersecting, etc.
-
extsort
External sorting (i.e. on disk sorting) capability on arbitrarily sized iterator
-
fastlem
generating procedural terrains based on simplified landscape evolution model (LEM)
-
crc16
A CRC16 implementation
-
sefar
evolutionary optimization algorithms
-
rurel
Flexible, reusable reinforcement learning (Q learning) implementation
-
num_convert
Type converting library, conversions integers by overflow addition, supports generics types
-
vrp-core
A core algorithms to solve a Vehicle Routing Problem
-
bindgen_cuda
Bindgen like interface to build cuda kernels to interact with within Rust
-
knossos
generating and rendering mazes
-
rand_chacha
ChaCha random number generator
-
easy_color
A very simple and easy-to-use color conversion tool
-
resiter
Helper crate for handling iterators over result
-
ext-sort
rust external sort algorithm implementation
-
sliding_features
Modular sliding window with various signal processing functions and technical indicators
-
ms_toollib
Algorithms for Minesweeper
-
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…
-
hyperloglog-rs
HyperLogLog trying to be parsimonious with memory
-
simsearch
lightweight fuzzy search engine that works in memory, searching for similar strings (a pun here)
-
adskalman
Kalman filter and Rauch-Tung-Striebel smoothing implementation using nalgebra, no_std
-
relp
Rust Exact Linear Programming
-
feruca
Unicode Collation Algorithm
-
boomphf
Scalable and Efficient Minimal Perfect Hash Functions
-
tegra_swizzle
Tegra X1 block linear texture memory tiling
-
triple_accel
Rust edit distance routines accelerated using SIMD. Supports fast Hamming, Levenshtein, restricted Damerau-Levenshtein, etc. distance calculations and string search.
-
kube_quantity
adding arithmetic operations to the Quantity type from the k8s-openapi crate
-
macro-machines
State machine macros with logging and graphviz DOT file generation
-
mergable
user-friendly and efficient CRDTs
-
numext-fixed-uint
Fixed-size uint types
-
axgeom
that provides ability to extract 1d ranges out of 2d objects
-
pyinrs
type library that is as easy to use as Python built-in types
-
sfcgal
High-level bindings to SFCGAL and conversion from/to other geometry libraries
-
tiny_sort
Binary-size optimized stable and unstable sorts
-
dogear
merging bookmark trees
-
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
-
polylog
polylogarithms
-
synthizer
bindings to Synthizer, a library for 3D audio and effects
-
dynalgo
A tiny library designed to produce animated SVG images that can illustrate graph algorithms in action
-
nlopt
Wrapper for the nlopt library
-
three-style
A CLI tool for searching 3x3 Rubiks'cube 3-style commutators
-
ragged-buffer
Efficient RaggedBuffer datatype that implements 3D arrays with variable-length 2nd dimension
-
stringmetrics
approximate string matching
-
fluent-comparisons
Boost readability by writing multicomparison expressions like
if any_of!({a,b,c}>=5) {...}
while keeping the benefits of hand-written code -
bit-iter
Iterate forward or backwards over the positions of set bits in a word
-
general-sam
A general suffix automaton implementation in Rust
-
board-game
A board game abstraction and generic utilities around it
-
rmpfit
Pure Rust implementation of the CMPFIT library
-
rithm
Arbitrary precision arithmetic
-
delaunator
A very fast 2D Delaunay triangulation library
-
editdistancek
Fast algorithm for computing edit distance
-
random_word
Efficient functions for generating random words in many languages
-
startin
A Delaunay triangulator for terrains
-
fuzzy-muff
Fuzzy Matching Library
-
rand_simple
random number generator that is independent from the other libraries and based on XOR shift
-
interpn
N-dimensional interpolation/extrapolation methods, no-std and no-alloc compatible
-
mhgl
Matts HyperGraph Library (MHGL). A straightforward library for hypergraph datastructures. Not a database.
-
extsort-iter
external sorting for all types for all iterators
-
kalman-rust
Dead simple implementation of Discrete Kalman filter for object tracking purposes
-
edfsm
Event Driven Finite State Machine library
-
svdlibrs
port of LAS2 from SVDLIBC
-
noiselib
procedural 1D, 2D, 3D and 4D noise and fractal functions
-
fst-no-std
Use finite state transducers to compactly represents sets or maps of many strings (> 1 billion is possible)
-
rex-sm
Hierarchical state machine
-
cobyla
optimizer for Rust
-
csvbinmatrix
Binary matrix Compressed Sparse Vector
-
const-crc32
A
const fn
implementation of crc32 checksum algorithm -
diffmatchpatch
Rewrite of diff-match-patch in Rust
-
phastft
A high-performance, quantum-inspired, implementation of FFT in pure Rust
-
voracious_radix_sort
State of the art radix sort algorithms. Single thread and multi thread versions.
-
i_triangle
Polygon Triangulation Library: Efficient Delaunay Triangulation for Complex Shapes
-
ocaml-interop
OCaml interoperability
-
ar-reshaper
A no-std crate to reconstruct Arabic, turkish and persian sentences to be used in applications that don't support Arabic script
-
flag-algebra
Razborov's flag algebras
-
futf
Handling fragments of UTF-8
-
partial_sort
version of std::partial_sort
-
natord
Natural ordering for Rust
-
polars-pipe
Lazy query engine for the Polars DataFrame library
-
satkit
Satellite Toolkit
-
ggstd
Partial implementation of Go standard library
-
iter_tools
Collection of general purpose tools to iterate. Currently it simply reexports itertools.
-
d3_geo_voronoi_rs
A port into rustlang of the javascript library d3-geo-voronoi
-
metrohash
high quality, high performance hash algorithm
-
puan-rust
Puan package contain tools for defining logic relationships among linear inequalities and reduction algorithms
-
simple_accumulator
accumulator for incremental statistical computations
-
wyrand
A fast & portable non-cryptographic pseudorandom number generator and hashing algorithm
-
sobol_burley
A seedable Owen-scrambled Sobol sequence
-
hyte
A hypothesis testing library crate for Z, T, and Pearson's Chi-squared tests
-
uniset
A hierarchical, growable bit set with support for in-place atomic operations
-
fenex
parsing and handling FEN and algebraic chess notations
-
timberio/file-source
A high-performance observability data pipeline
-
rust-sugiyama
Sugiyama's algorithm to calculate coordinates of a directed graph
-
big-int
arbitrary-precision, arbitrary-base arithmetic, supporting arbitrarily large integers of any base from 2 to u64::MAX
-
ckey
consistent hash key library
-
fast_paths
Fast shortest path calculations on directed graphs made possible by pre-processing the graph using Contraction Hierarchies
-
differential-dataflow
An incremental data-parallel dataflow platform
-
stringslice
A collection of methods to slice strings based on character indices rather than bytes
-
pasture-algorithms
Point cloud algorithms for pasture
-
orx-funvec
Traits to unify access to elements of n-dimensional vectors which are particularly useful in algorithms requiring both flexibility through abstraction over inputs and performance through monomorphization
-
fluent_data
A low footprint streaming data modelization library and service
-
vecmath
type agnostic library for vector math designed for reexporting
-
lazy-bytes-cast
Lazy casts from & to byte arrays
-
volute
Boolean functions implementation, represented as lookup tables (LUT) or sum-of-products (SOP)
-
brzozowski
Work with regular expressions using Brzozowski derivatives. "
-
whittaker-eilers
A sparse matrix implementation of Whittaker-Eilers smoothing and interpolation
-
rand-unique
A no-std crate for generating random sequences of unique integers in O(1) time
-
weighted_rand
A weighted random sampling crate using Walker's Alias Method
-
hostlist-parser
Parses hostlist expressions into a Vec of Strings
-
ramp
A high-performance multiple-precision arithmetic library
-
mesh_to_sdf
Mesh to signed distance field (SDF) converter
-
product-os-random
Product OS : Random provides a suite of random generator tools for different contexts. This includes random text, number and key generators including crypotgraphically secure random generation.
-
random-pick
Pick an element from a slice randomly by given weights
-
chksum
hash functions with a straightforward interface for computing digests of bytes, files, directories, and more
-
gix-revwalk
providing utilities for walking the revision graph
-
fastcdc-alt
FastCDC (content defined chunking) implementation in pure Rust with an alternative API to the original crate
-
wcs
FITS World Coordinate System (WCS)
-
toodee
A lightweight 2D wrapper around a Vec
-
rustronomy-watershed
a pure-rust implementation of the segmenting and merging watershed algorithms
-
rhai-sci
Scientific computing in the Rhai scripting language
-
minimax
Generic implementations of Minimax
-
qptrie
A QP-Trie implementation for Rust
-
convex
Client library for Convex (convex.dev)
-
localsearch
Local Search based Metaheuristics
-
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
-
pm-remez
Parks-McClellan Remez FIR design algorithm
-
walky
A TSP solver written in Rust
-
cap-rand
Capability-based random number generators
-
rs-graph
graph algorithms and combinatorial optimization
-
relp-num
Number types for the relp crate
-
mt19937
A translation of the MT19937 Mersenne Twister rng algorithm to Rust
-
qrc
generating and manipulating QR code images in various formats
-
is_sorted
Iterator sorted?
-
ndarray-rand
Constructors for randomized arrays.
rand
integration forndarray
. -
adler
clean-room implementation of the Adler-32 checksum
-
elipdotter
Embeddable full text search engine
-
flo_binding
Declarative binding library for Rust
-
oxydized-money
providing data types to manipulate amounts of money in specific currencies and convert amounts between then
-
rake
Rapid Automatic Keyword Extraction (RAKE) algorithm
-
sudoku-solver
backtracking algorithm for solving sudoku
-
keyphrases
Rapid Automatic Keyword Extraction (RAKE) implementation in Rust
-
crczoo
CRC Zoo: A collection of Cyclic Redundancy Check (CRC) algorithms
-
cursorsort
A QuickSort implementation with a cursor based partitioner and pivot selector
-
discrete
Combinatorial phantom types for discrete mathematics
-
fuse-rust
Fuse is a super lightweight library which provides a simple way to do fuzzy searching. Fuse-Rust is a port of Fuse-Swift, written purely in rust
-
smtlib
A high-level API for interacting with SMT solvers
-
u144
Unsigned Integer 144 bits
-
sparta
software components specially designed for building high-performance static analyzers based on the theory of Abstract Interpretation
-
geometry-predicates
port of robust geometric predicates
-
prime-checker
hold sample functions to check the prime-ness of a given unsigned, 64-bit integer
-
rmqtt-raft
raft framework, for regular people
-
clipline
Efficient scan conversion (rasterization) of line segments with clipping to a rectangular window
-
diffs
A number of diff algorithms, also called longest common subsequence
-
nunny
the definitive non-empty slice/array/vec library for Rust
-
sepax2d
A safe crate for finding and resolving collisions of 2D convex shapes using the Separating Axis Theorem
-
rust_cascade
bloom filter cascade implementation in Rust
-
abstract_integers
Defining specification-friendly bounded natural integer types
-
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
-
hypernonsense
Using Locality Sensitive hashing to find the nearest points to a query point in extremely high dimensional space
-
flowmium
workflow orchestrator that use Kubernetes
-
cvt
Expose the cvt function from Rust libstd
-
oxigen
Fast, parallel, extensible and adaptable genetic algorithm library
-
ipl3checksum
calculate the IPL3 checksum for N64 ROMs
-
pcg_rand
PCG family of random number generators in pure Rust
-
decmathlib-rs
Port of the Intel Decimal Floating-Point Math Library decimal128 type to Rust
-
rand_core
Core random number generator traits and tools for implementation
-
dcc-lsystem
Lindenmayer system together with some rendering tools
-
hexagonal_pathfinding_astar
A-Star pathfinding algorithm tailored for traversing a bespoke collection of weighted hexagons
-
double-ended-peekable
An adapter providing peeking features to double-ended iterators
-
geoutils
A collection of geo computation utilities
-
augrim
consensus algorithms implemented in Rust
-
inter-val
Mathematical intervals, i.g., [a, b], (a, b), [a, b), and (a, b] on ℝ, and multi-dimensional axis-aligned boxes represented as Cartesian product of intervals
-
dbsp
Continuous streaming analytics engine
-
dmp
A high-performance library in that manipulates plain text
-
rustmex
providing convenient Rust bindings to Matlab MEX API's
-
edit-distance
Levenshtein edit distance between strings, a measure for similarity
-
sunrise-sunset-calculator
Sunrise sunset calculator for Rust, supports extreme latitudes
-
xentrace-parser
A XenTrace files parser with a study purpose
-
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.
-
cnccoder
generating gcode operations targeted for GRBL controled cnc machines, and also generates camotics projects for simulation
-
screwsat
condlict driven clause learning sat solver
-
movavg
Generic Moving Average calculation
-
h3o-zip
A compression scheme tailored for H3 cell indexes
-
multistochgrad
Stochastic Gradient, Multithreaded
-
esri_ascii_grid
reading ESRI Ascii Grid .asc files
-
logicng
Creating, Manipulating, and Solving Boolean Formulas
-
lol-core
A Raft implementation in Rust language
-
rufl
A powerful util function library for rust
-
radiate
Parallel genetic programming engine capable of evolving solutions for supervised, unsupervised, and general reinforcement learning problems
-
ceres-solver
Safe Rust bindings for the Ceres Solver
-
louvre
A Robust Triangulation Algorigthm
-
gaoya
Locality Sensitive Hashing Data Structures
-
kewb
manipulating and solving a 3x3 Rubik's cube with Kociemba's two phase algorithm
-
inator
Optimal zero-copy parsers with nondeterministic finite automata
-
convert-base
convert the radix (base) of digits stored in a vector
-
spalinalg
Sparse Linear Algebra Library
-
shared-buffer
An abstraction over buffers backed by memory-mapped files or bytes in memory
-
truth-values
Generate all possible combinations of N bools
-
toffee
Get command to run to run specific test in a file
-
permutation
Small utility for creating, manipulating, and applying permutations
-
html2pango
convert html to pango
-
recursive
Easy recursion without stack overflows
-
fqn-estimator
Fast online Qn scale estimator in Rust
-
hyperloglogplus
HyperLogLog implementations
-
favannat
Algorithms to evaluate the function encoded in ANN-like structures
-
cyclic-poly-23
A rolling, decomposable hash algorithm
-
eddie
Fast and well-tested implementations of edit distance/string similarity metrics: Levenshtein, Damerau-Levenshtein, Hamming, Jaro, and Jaro-Winkler
-
hex2d
Helper library for working with 2d hex-grid maps
-
text-file-sort
Sort a text file similar to linux sort
-
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…
-
randevu
The official Rust implementation of the RANDEVU algorithm
-
rxqlite-notification
A distributed sqlite database built upon
openraft
,sqlx
andsqlite
-
autodiff
An automatic differentiation library
-
prime_bag
A bag datatype that used unsigned integers for storage
-
lutz
"An Algorithm for the Real Time Analysis of Digitised Images" by R. K. Lutz
-
algorithmica
Rust Algorithms
-
lerp
Generic linear interpolation and extrapolation, automatically implemented for a variety of numeric types
-
pso-rs
Particle Swarm Optimization implementation in Rust
-
cdchunking
Content-defined chunking
-
twofloat
Double-double arithmetic functionality
-
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
-
median-accumulator
fast, space-efficient, generic accumulator for computing median
-
rusty_oge
Библиотека, решающая задачки из ОГЭ по информатике
-
id_tree_layout
visualize trees from the 'id_tree' crate
-
hasty
interface to system BLAS libraries for fast linear algebra operations
-
standardform
Effortlessly operate on numbers like 2e19 or 2*10^4 and more with this Rust implementation of standard form. Simplify, convert, and manipulate large numerical expressions with ease.
-
fast_poisson
Bridson's algorithm for fast Poisson disk sampling
-
memoesu
fast subgraph enumeration on graphs using a memoized parallel ESU algorithm
-
evolutionary
A fully extensible Rust framework for using paralyzed genetic algorithms to solve problems
-
pdqselect
Selects the kth smallest element of a slice, based on Orson Peters's Pattern Defeating Quickselect
-
sif-embedding
Smooth inverse frequency (SIF), a simple but powerful embedding technique for sentences
-
stochastic-rs
stochastic processes
-
snowflaker
A Twitter snowflake algorithm simply implemented in Rust
-
automaton
Parse regular languages
-
graph-algorithms
5 graph algorithms - DIJKSTRA'S, BFS, DFS, KOSARAJU'S and BELLMAN FORD ALGORITHM
-
wavefc
A home-grown implementation of the Wave Function Collapse algorithm
-
grid_pathfinding
Pathfinding using JPS and connected components on a grid
-
dsp
Digital Signal Processing
-
cubic_spline
Function that calculates curve points for cubic spline
-
ratel_bandit
Muti-armed Bandit Simulator
-
graph_builder
A building block for high-performant graph algorithms
-
count-digits
A no-std trait to determine the lengths of integers in various number bases
-
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
-
pi_orca
A* Path Finding Algorithm
-
gst-plugin-textahead
GStreamer Plugin for displaying upcoming text buffers ahead of time
-
lophat
Lockfree Persistent Homology Algorithm Toolbox
-
flexihash
Consistent hashing following the API and compatible with flexihash-php and flexihash-py
-
wtools
Collection of general purpose tools for solving problems. Fundamentally extend the language without spoiling, so may be used solely or in conjunction with another module of such kind.
-
uuid-by-string
Generating uuid-hash from string
-
galois_2p8
Basic Arithmetic over all GF(2^8) fields
-
iterextd
This trait provides additional methods for working with iterators, enhancing their functionality
-
topo_sort
A 'cycle-safe' topological sort for a set of nodes with dependencies
-
lazyrand
generating random numbers easily
-
micro_ndarray
Very small multi-dimensional-array implementation
-
rand_xoshiro
Xoshiro, xoroshiro and splitmix64 random number generators
-
faer_gmres
GMRES implementation using faer
-
rustoku
Sudoku solver using human and brute force technques, along with a framework for playable app building and free of dependencies
-
slice-utils
A collection of slice utils, like itertools
-
product-os-command-control
Product OS : Command and Control provides a set of tools for running command and control across a distributed set of Product OS : Servers
-
redfa
Regular expression derivatives for creating DFAs
-
sample-std
Sampler definitions and implementations for st
-
collision
extension to cgmath
-
easer
Tiny library imlementing Robert Penner's easing functions
-
primes
A 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.
-
times
Timing Benchmark, Repeated Runs, with Statistics
-
ognlib
Some code that is written to practice Rust
-
qtruss
finite-element solver for trusses
-
multistream-batch
Implementations of batching algorithms
-
lazy_diamond_square
Lazy implementation of the diamond-square without randomness
-
stream-more
Stream utilities for Rust
-
spec_math
implementations of special mathematical functions. Includes re-implementation of the CEPHES math library for gamma functions, error functions, elliptic integrals, sine and cosine integrals…
-
portmatching
Fast Graph Matching for Port Graphs
-
quine-mccluskey
Boolean function minimizer based on Quine–McCluskey algorithm
-
lt-fm-index
Fm-index using k-mer lookup table for exact pattern matching
-
liblbfgs
Fast and safe Rust implementation of LBFGS and OWL-QN algorithms ported from Naoaki Okazaki's C library libLBFGS
-
punkt
sentence tokenizer
-
algebraics
algebraic numbers library
-
algorithms-rs
Introduction to Algorithms Thrid Edition By Rust programming Language
-
scopegraphs
A port of scopegraphs https://pl.ewi.tudelft.nl/research/projects/scope-graphs/ to Rust
-
rust-bigint
Common traits and methods for multiple BigInt implementations
-
mako_infinite_shuffle
Iterates over combinatorial spaces in a random order
-
iter-tree
Convert between iterators and tree structures in both directions
-
norms
A collection of distance metrics on strings
-
bevy_tiles
Bevy library for working with entities in grids
-
subslice
Fast subslice search
-
autour_core
AUTOmata Utilities and Representation (AUTOUR) is a small toolbox to experiment with various kinds of automata and draw them
-
hud-slice-by-8
HUD Software's Rust improved implementation of the Intel Slice-By-8 algorithm
-
tinymt
64/32 - a lightweight variant of Mersenne Twister PRNG
-
bgv
An efficient FHE library
-
dia-ip-range
-
hilbert
curve transform and inverse for points having two to thousands of dimensions, using Skilling's algorithm
-
fmttools
Tools for modifying text without allocating any intermediate buffers or unsafe code
-
poker
speedy poker hand evaluation
-
xorfilter-rs
Xor Filters: Faster and Smaller Than Bloom and Cuckoo Filters
-
random
The package provides sources of randomness
-
spiral
Iterate over a 2D structure in a spiral pattern
-
game_pathfinding
一个寻路库,包含AStar和Recast,目前还在开发阶段
-
pi_guid
An GUID Generator
-
cavalier_contours
2D polyline/shape library for offsetting, combining, etc
-
debruijn
Tools for DNA sequences: efficient k-mer manipulation, De Bruijn graph construction and compaction and handling of DNA strings
-
dive-deco
A dive decompression models library (Buehlmann ZH-L 16C)
-
pubgrub
version solving algorithm
-
faer-sparse
Basic linear algebra routines
-
dtw_rs_band_fork
Fork of Dynamic Time Warping Library for Rust
-
teliox
Transaction Event Log
-
rip_shuffle
Fast sequential and parallel in-place shuffling algorithms
-
shortestpath
Shortest Path is an experimental library finding the shortest path from A to B
-
jopemachine-raft
language implementation of Raft algorithm
-
fluent_state_machine
A domain-specific language (DSL) for creating state machines in Rust
-
glidesort
sorting algorithm
-
line-col
Convert string slice indices into line/column numbers
-
minecraft_launcher_core_msa
A Minecraft launcher library written in rust
-
wyhash
fast portable non-cryptographic hashing algorithm and random number generator
-
cryptominisat
Rust bindings for CryptoMiniSat, a boolean satisfiability solver
-
bandit
Algorithms in Rust
-
chobitlibs
Single file libraries for my project
-
graphmst
allows you to generate minimum spanning tree from a graph using Prims, Kruskals, Boruvkas and Reverse Delete algorithms
-
crcxx
computes CRC-8/16/32/64/128 using various methods. Included catalog of CRC parameters simplify usage.
-
UUID_extend
Extension of uuid generation based on snowflake algorithm and implementation of ID to string conversion
-
argmap
parse command-line arguments into a hashmap and vec of positional args
-
memx-cdy
The fast memory functions like a libc memcmp(), memchr(), memmem(), memcpy(), memset()
-
name-engine
computing Markov chains to generate random names based on pronunciation
-
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…
-
rusty_planner
Artificial intelligence planning & reasoning library for Rust
-
ipopt
Rust language bindings for the Ipopt non-linear constrained optimization library
-
round_float
Round
f64
andf32
to specified number of decimals -
index-utils
working with indices
-
smallest-enclosing-circle
Iterative and recursive two-dimensional implementations of Welzl's algorithm for computing the smallest enclosing circle
-
httlib-huffman
Canonical Huffman algorithm for handling HPACK format in HTTP/2
-
graphlib_rust
Dagre's Graphlib implementation in Rust
-
number-based
attempt of mine to make working with number bases simple
-
accurate
(more or less) accurate floating point algorithms
-
lazy-prime-sieve
Lazy Sieve of Eratosthenes for infinitely generating primes lazily in Rust
-
b4s
Binary Search Single Sorted String: Perform binary search on a single, delimited string slice of sorted but unevenly sized substrings
-
mintyml
A minialist alternative syntax to HTML
-
ilog
Base 10 and 2 logarithm functions for integer types
-
algorithms_fourth
用rust实现算法4书中的算法,作为rust的学习实践
-
hora
Hora Search Everywhere
-
minecraft_downloader_core
A Minecraft downloader written in rust
-
decimal-wad
Math for preserving precision floats up to 18 decimal places
-
qsort-rs
A quick sort algorithm that accepts any type and non-recursive approach
-
sort
sort algorithms
-
hierarchical_hash_wheel_timer
A low-level timer implementantion using a hierarchical four-level hash wheel with overflow
-
rust-algo
rust algorithms
-
genetic-rs
A small crate for quickstarting genetic algorithm projects
-
swap3
Swapping of three references, rotating the values left or right
-
clf
flush the cpu cache line by __builtin_clear_cache()
-
oxidd-reorder
Reordering algorithms for OxiDD
-
permutohedron
Generate permutations of sequences. Either lexicographical order permutations, or a minimal swaps permutation sequence implemented using Heap's algorithm.
-
rapl
that makes numerical scripting with Rust simple and enjoyable
-
const-arithmetic
Exploits Rust's type generic system to perform integer arithmetics at compile time
-
lp-solvers
.lp file format implementation and external solver invocation for Cbc, Gurobi, cplex, and GLPK
-
iterator_ilp
Iterator extensions for instruction-parallel reductions
-
four-bar
Four🍀bar library provides simulation and synthesis function for four-bar linkages
-
iceyee_random
Random
-
time_series_generator
Generate various timeseries of given length, some randomly sampled
-
binary-merge
Minimum comparison merge of two sorted sequences with random access
-
rustdct
Compute Discrete Cosine Transforms (DCT) of any size in O(nlogn) time, in pure Rust
-
rust-3d
2D/3D library written in rust
-
travelling_salesman
Travelling Salesman Problem Solvers
-
wfc
Generate images using Wave Function Collapse
-
bsa3-hash
The hash function used in BSA files for *The Elder Scrolls III: Morrowind*
-
langlang_value
langlang is a parser generator based on Parsing Expression Grammars (library)
-
aviation-calculator
Useful calculations for aviators
-
noise-functions
Fast and lightweight noise functions
-
block-mesh
Fast algorithms for generating voxel block meshes from arrays
-
extprim
Extra primitive types (u128, i128)
-
actionable
An enum-based async framework for building permission-driven APIs
-
genetic_algorithm
A genetic algorithm implementation
-
del-ls
sparse solver library for research prototyping
-
ratio-color
Ratio's color palette management in Rust, built on 'palette' and 'enterpolation'
-
prepona
A graph crate with simplicity in mind
-
dirty-fsm
A quick and dirty state machine library
-
picea
little physics engine. can alos be used in web(wasm).
-
quriust
simulate a quantum computer. Only for quriust ones.
-
beetle-collatz
A collection of functions relating to the Collatz conjecture
-
wpa-psk
Compute the WPA-PSK of a Wi-FI SSID and passphrase
-
async_wrr_queue
[async & high performance] queued weighted round-robin load balance algorithm
-
setsum
order-agnostic checksum
-
knn_classifier
classifier for the k-Nearest Neighbors (kNN/k-nn) algorithm
-
reltester
Automatically verify the correctness of [Partial]Eq/Ord implementations
-
ann_dataset
A lightweight research library for managing Approximate Nearest Neighbor search datasets
-
vqf-rs
A
no-std
, dependency-free port of VQF sensor fusion algorithm for IMUs -
slice_search
A collection of algorithms for searching within slices
-
magic-buffer
a virtual ring buffer implementation that magically wraps around itself
-
vrp-pragmatic
An extension logic for solving rich VRP
-
radsort
Radix sort implementation for sorting by scalar keys (integers, floats, chars, bools)
-
bevy_crevice
Create GLSL-compatible versions of structs with explicitly-initialized padding (Bevy version)
-
onlinematching
Online bipartite matching is a type of matching problem where the goal is to match elements from two disjoint sets (also known as "bipartite graphs"), where one set represents the "left"…
-
phi-accrual-detector
Pluggable phi-accrual-detection package for healthcheck of monitored processes
-
re_arrow2
Unofficial implementation of Apache Arrow spec in safe Rust
-
funspace
N-dimensional function spaces and transforms
-
gcra
A basic implementation of GCRA algorithm for rate limiting
-
to_method
micro-crate for using Into more ergonomically
-
rs_algo
Common sorting algorithms and other common computer science algorithms
-
mackerel_plugin
Mackerel plugin helper library
-
natural
Pure rust library for natural language processing
-
weighted-rs
A libray for weighted balancing algorithm
-
density-mesh-core
Core module for density mesh generator
-
poisson_reconstruction
Screened Poisson Reconstruction algorithm in Rust
-
modicum
Modular arithemtic library in pure Rust
-
topologic
Topological sorting of Acyclic Dependency Graphs
-
arcos-kdl
ARCOS-Lab Kinematics and Dynamics Library
-
g2poly
Primitive implementation of polynomials over the field GF(2)
-
metaheuristics
Find approximate solutions to your optimisation problem using metaheuristics algorithms
-
causal-hub
A hub for Causal Data Science
-
timelag
Creating time-lagged time series data
-
csparse21
Sparse Matrix Solver
-
nscldaq_ringbuffer
Low level NSCLDAQ ring buffer access
-
coding_pk
pk for coding solution
-
globe-rs
management of geographic coordinates
-
voicecode
calculator for Produce Traceability Initiative
-
codice_fiscale_rs
compute and validate Italian Tax code (codice fiscale)
-
decompound
Decompose a compound word into its constituent parts. Works in any language, as you provide the rules around what constitutes a (*single*) word.
-
sosa
Stochastic simulation algorithm (SSA) with a Monte-Carlo generating method
-
varstack
A call-stack based singly-linked list
-
kalmanfilt
Kalman and other filters from Kalman-and-Bayesian-Filters-in-Python
-
gsv-culture-ships
Iain M. Banks's Culture ship names in a library.
-
qframework
A experimental micor framework for clear design, based on queue model
-
spectre
A lightweight toolkit for analysing p2p network topologies
-
wu-diff
Compute differences between two slices using wu(the O(NP)) algorithm
-
sub-strs
For finding sub strings
-
circularing
Circular buffer backed by in-stack storage
-
statig
Hierarchical state machines for designing event-driven systems
-
jaaptools
I really just wanted to try publishing a package, but this contains stuff I find useful in many circumstances
-
pingora-limits
rate limiting and event frequency estimation
-
iroh-bytes
blob and collection transfer support for iroh
-
winconsole
A wrapper for console-related functions in the Windows API
-
big-rational-str
Format and parse BigRationals to/from decimal numbers
-
postcard-cobs
Consistent Overhead Byte Stuffing (COBS) algorithm. COBS is an algorithm for transforming a message into an encoding where a specific value (the "sentinel" value) is not used…
-
locustdb-compression-utils
compressing and decompressing sequences used in LocustDB
-
color_space
converting between color spaces and comparing colors
-
rustfst-ffi
constructing, combining, optimizing, and searching weighted finite-state transducers (FSTs). Rustfst-ffi provides C interfaces of the Rust library
-
kmpm
KMP(Knuth-Morris-Pratt algorithm) method library
-
fast_loaded_dice_roller
novel Fast Loaded Dice Roller algorithm (https://arxiv.org/pdf/2003.03830.pdf)
-
line_2d
Bresenham's line algorithm as a rust iterator
-
general_stable_vec
A Vec implementation with stable indices
-
datas
data structures and algorithms and data analisys
-
augurs-core
Core data structures and traits for the augurs time series library
-
overlord
consensus procotol
-
uwu_wasm
uwuifying the web
-
duval-rs
Duval algorithm in Rust
-
fnntw
Fastest Nearest Neighbor (in the) West. A fast kdtree/kNN library.
-
mur3
language implementation of MurmurHash3
-
crc-frame
functions for reading and writing crc32'd framed buffers
-
microcli
Bunch of random unrelated CLI tools
-
graph_process_manager_loggers
Generic loggers for graph_process_manager_core
-
varisat
A CDCL based SAT solver (library)
-
arima
time series modeling for Rust
-
numerical
Algorithm for numerical analysis
-
sss_moo
SSS Many-Objective Optimization Framework
-
gchemol-geometry
gchemol: a Graph-based CHEMical Objects Library
-
sssignals
🐍 Simple, Synchronous Reactive Signals for Rust
-
scopegraphs-regular-expressions
A port of scopegraphs (https://pl.ewi.tudelft.nl/research/projects/scope-graphs/) to Rust
-
omnipaxos
A distributed log library written in Rust
-
lagrangian_interpolation
An algorithm to interpolate between points with polynomials
-
disco-quick
processing the Discogs XML data dumps
-
polyeval
Evaluate polynomials
-
inexor-rgf-core-di
Inexor - Reactive Graph Flow - Dependency Injection
-
moyo
Crystal Symmetry in Rust
-
npc-engine-utils
module of the NPC engine, providing re-usable support code
-
ecgen-rs
Enumerative Combinatoric Generation in Rust
-
guid-create
Rust helper for creating GUIDs
-
toml-query
work with toml::Value objects more conveniently
-
rev_lines
Rust Iterator for reading files line by line with a buffer in reverse
-
javarandom
Pure rust implementation of java.util.Random
-
dagga
For scheduling directed acyclic graphs of nodes that create, read, write and consume resources
-
ecdna-lib
The ecDNA distribution for the evolutionary of extra-chromosomal DNA (ecDNA)
-
groestlcoin_hashes
Hash functions used by the rust-groestlcoin eccosystem
-
multidimension
High-level manipulation of multi-dimensional arrays
-
py-raphtory
Raphtory python bindings allowing custom rust algorithms compatible with the python client
-
ros-nalgebra
ROS message converter for rosrust and nalgebra
-
rlu
Sparse LU factorization with partial pivoting
-
mini-rx
bare-bones "reactive programming" (change propogation) using a central data dependency graph
-
ribbon
Tape machine for peeking through windows of iterators
-
exact-covers
A collection of exact cover solvers
-
linearalgebra
Test project to learn Rust and implement a small library for linear algebra
-
boostvoronoi_ext
Boost voronoi private workspace (this workspace will be re-integrated in the main crate in next release)
-
dogs
Discrete Optimization Global Search framework. Implements various search algorithms that can be found in combinatorial optimization or heuristic search.
-
xynth
ASIC/GPU-resistant cryptographic hashing algorithm written in pure Rust for x64 CPUs with AVX2 support
-
rand-sequence
A no-std crate for generating random sequences of unique integers in O(1) time
-
hashring
A minimal implementation of consistent hashing
-
quickdiv
Faster repeated division and modulo operations by the same divisor
-
gad
Generic automatic differentiation for Rust
-
zenu-matrix
Matrix library for ZeNu
-
quasirandom
number generation
-
fast-math
Fast, approximate versions of mathematical functions
-
topk
TopK algorithm implementation in Rust
-
ctb
ctb unifies borrowed and owned values into a smart pointer that is internally borrowed to retain ownership
-
at-commands
AT Commands builder and parser for Rust #![no_std]
-
galileo-types
Trait based geo geometries and algorithms
-
lattices
Lattice data types for simplifying distributed state by providing associativity, commutativity, and idempotence
-
graph-types
Shared types for graph theory
-
scale_std
datastructures and algorithms to be run on the SCALE engine
-
traiter
Traits collection
-
lace_metadata
Archive of the metadata (savefile) formats for Lace. In charge of versioning and conversion.
-
ramp64-srm-convert-lib
build RetroArch Mupen64 SRM Converter
-
human-sort
Human sort (natural sort) implementation
-
various_data_file
Store a dainary datas in a file. Use mmap, optimize fragments on delete, and reference identical strings.
-
qmc
Quantum Monte Carlo simulations in Rust
-
chrono-probe
Compare and measure the time complexity of algorithms
-
lightningscanner
A lightning-fast memory pattern scanner, capable of scanning gigabytes of data per second
-
euc_lib
Easy to use implementation of extended and normanl Euclidean algorithm
-
quantum_world_state
in-ram database with relationships between elements inspired by quantum superposition and entanglement
-
markov-algorithms
Markov algorithms
-
quadtree_rs
Point/region Quadtree with support for overlapping regions
-
simple_delaunay_lib
2D and 3D Delaunay algorithms in Rust
-
graphalgs
Graph algorithms based on the Rust 'petgraph' library
-
pagat
that helps you split the bill
-
nsga
Multi-objective genetic optimization algorithm NSGA-II
-
omango-wyhash
Wang Yi hash for Rust
-
entro-sort
Entro Sort is an in-place, linearithmic, unstable sorting algorithm
-
buldak
that provides various sorting functions
-
path-finding
variety of path finding and graph operations. Work in progress.
-
naturalneighbor
2D Natural Neighbor Interpolation (NNI) library for Rust
-
hyperloglog
in Rust
-
flame-clustering
Fuzzy clustering by Local Approximation of MEmberships (FLAME)
-
combination
A lib to do math jobs like permutate and combinate data from vec
-
near_enough
finding the difference between two values, and for getting the closest match from a set
-
normalize-line-endings
Takes an iterator over chars and returns a new iterator with all line endings (\r, \n, or \r\n) as \n
-
scroll-buffer
Extra writable buffers for Scroll
-
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
-
dlx-rs
dancing links in Rust
-
crystallographic-group
Provide crystallographic group reference and useful information, e.g. lattice coordinates and symmetry operation matrices.
-
lazy_async_promise
Primitives for lazily getting data from futures with tokio for immediate mode guis
-
arion
Solver and Local search operators for vehicle routing problems
-
bint
Bounded Integer in Rust
-
display_buffered
A small library that provides convinience functions to write all the elements into a writer with buffering
-
url-hash
types that provide secure and stable hash values for Urls
-
wotw_seedgen
Seed Generator for the Ori and the Will of the Wisps Randomizer
-
aochelpers
A set of structs and associated methods that cover common use=cases when solving Advent Of Code problems
-
worley-noise
Worley noise implementation
-
tectonic_engine_spx2html
The Tectonic engine that converts SPX output to HTML
-
numext-fixed-hash
Fixed-size hash types
-
wallust_themes
Embeded colorschemes in an array of u32s
-
routrs
Geograph-based shortest distance calculation for Rust
-
krakel
A lean 2d kd-tree ported from OpenCamLib
-
interval_adapter
Interval adapter for both open/closed implementations of intervals ( ranges )
-
reed-solomon-16
Reed-Solomon GF(2^16) erasure coding with O(n log n) complexity
-
dlt
DLT (direct linear transform) algorithm for camera calibration
-
hackflight
flight-control software for makers in Rust
-
vpsearch
Vantage Point Tree search algorithm for fast nearest neighbour search in multi-dimensional metric spaces
-
morton-encoding
encoding and decoding Morton ("Z-order") keys
-
brzozowski-regex
Brzozowski regular expressions
-
crc_all
A Pure Rust Implementation of Generic CRC Algorithm
-
oscirs_linalg
GPU accelerated linear algebra crate for scientific computing
-
rusty_genes
implementing and executing evolutionary algorithms with customizable models
-
atrocious_sort
Some of the most useless sorting algorithms implemented in Rust
-
slsqp
optimizer for Rust
-
bytecmp
offers fast binary data comparison algorithms to enumerate common substrings, unique substrings or determine a patch set
-
depper
basic dependency validation
-
infinity-sampler
Deterministic reservoir sampling for Rust
-
distance_difference_triangulation
Position triangulation from differences of distances
-
blackboxmc_java
BlackboxMC bindings for java.util
-
mgraph
performance-oriented graph library for Rust
-
logicgate
logic gates with NAND gates as the underlying layer Turing Complete
-
rectutils
Common algorithms for rectangles (quadtree, rect packing, etc.)
-
seqalign
Sequence alignment using edit operations
-
acvm_blackbox_solver
A solver for the blackbox functions found in ACIR and Brillig
-
median
efficient O(n) median filter
-
promerge
Parse, edit and merge Prometheus metrics exposition format
-
fast_polynomial
Faster polynomial evaluation using Estrin's Scheme to exploit instruction-level parallelism
-
etcd_dynamic_state
Etcd dynamic state library
-
luhn
validation library
-
kernel-density-estimation
Kernel density estimation in Rust
-
crfsuite
Safe wrapper of crfsuite
-
out
fast min and max functionality for collections
-
perchance
Very simple random number generation optimized for ease of use
-
sort-it
various sorting algorithms
-
vecfx
Extra batteries for a vec of floats
-
demes-forward
rust API for iterating demes models forwards in time
-
bosque
A very fast in-place kdtree library
-
contest-algorithms
Common algorithms and data structures for programming contests
-
order-stat
Compute order statistics efficiently via the Floyd-Rivest algorithm and estimate a median via the median-of-medians algorithm
-
nblast
neurite similarity algorithm
-
minesweeprs
Probabalistic minesweeper solver, based on https://mrgris.com/projects/minesweepr/
-
sat_toasty_helper
more-easily writing SAT constraints
-
fast_hilbert
Fast Hilbert 2D curve computation using an efficient Lookup Table (LUT)
-
fast_ode
Fast Runge-Kutta implementation for solving ordinary differential equations
-
entromatica
constructing, simulating and analyzing markov chains
-
modular-decomposition
computing the modular decomposition of a graph
-
sparsetools
2-D sparse matrix package for numeric data
-
arrowbatch
Reader for arrow-batch format
-
add_one_hammahutz
Add one to a random number
-
cmaes
CMA-ES optimization algorithm
-
tenthash
A robust 160-bit non-cryptographic hash function
-
based64
BASE64 implementation for chads
-
lightmap
Light map generator
-
llsc
load-link/store-conditional implementation using atomics
-
ru_annoy
annoy(https://github.com/spotify/annoy) (Index serving only). Providing C api as well
-
permutation_iterator
iterating over random permutations using O(1) (i.e. constant) space.
-
libmf
Large-scale sparse matrix factorization for Rust
-
kanaria
functions such as hiragana, katakana, half-width and full-width mutual conversion and discrimination
-
microwfc
Small Wave-Function-Collapse implementation
-
ssdeep
wrapper for ssdeep
-
vsort
GNU Version Sort Rust implementation
-
od_opencv
Object detection utilities in Rust programming language for YOLO-based neural networks in OpenCV ecosystem
-
gix-negotiate
gitoxide project implementing negotiation algorithms
-
cplex-sys
Low level bindings to the Cplex C-API
-
libtess2-rs
good quality polygon tesselator and triangulator
-
lolraft
A Multi-Raft implementation in Rust language
-
lace_utils
Miscellaneous utilities for Lace and shared libraries
-
repr
The regular-expression-as-linear-logic interpretation and its implementation
-
graph6-rs
parsing graph6/digraph6 strings and converting them into other text based formats
-
loan_ec
providing loan level EC measures
-
squares-rnd
fast counter based non-crypto random generator
-
fqdn-trie
FQDN (Fully Qualified Domain Name) lookup structures (based on tries)
-
chksum-hash
hash algorithms for batch and stream computation
-
nmm_lib
nine mens morris
-
simplers_optimization
Simple(x) black-box optimization algorithm
-
substack
Stackbound iterable linked list for heap-free recursive algorithms
-
ilattice
2 and 3-dimensional integer lattice math
-
tomt_async
Primarily a dumping ground for personal async snippets that may be used in other ToMT projects. If this crate is useful to others please let us know.
-
metrics_evaluation
Small foot-print parser and solver for (nested) text-based comparisons
-
swf-fixed
SWF fixed-point numbers for Rust
-
ndsort-rs
Sorting Algorithms implemented in Rust
-
mccga
Implements the machine-coded compact genetic algorithm (MCCGA)
-
symba
Computer Algebra System written in Rust
-
nanvm-lib
NaNVM library
-
openraft-sledstore
A sled based implementation of the
openraft::RaftStorage
trait -
ac-library-rs
port of AtCoder Library (ACL)
-
const_ranged_int
Ranged constant integers. Useful for lookup tables with constrained values to avoid secondary bounds check.
-
rucrf
Conditional Random Fields implemented in pure Rust
-
matlab-sys
Rust bindings for the Matlab C API
-
meiosis
An evolutionary algorithm library with as many compile time checks as possible
-
glicko2
rating system
-
stable-hash
A stable, structured hash with backward compatibility
-
zf-cc-utils
A small utilty crate for competitive coding
-
lazysort
Lazy sorting for iterators
-
threes
A Threes! implementation in Rust
-
madepro
A minimal Rust library crate for solving finite deterministic Markov decision processes (MDPs)
-
degrees
Easily work with and compare temeratures in different units
-
enso-prelude
An augmented standard library in the vein of Haskell's prelude
-
sobol
sequence generator for Rust
-
rustycap
Official CapBypass wrapper for Rust
-
fft2d
Fourier transform for 2D data such as images
-
qip-iterators
Iterators for tensor product matrix multiplication
-
bin_packer_3d
Three dimensional fitting algorithm to fit smaller boxes inside of a larger box
-
qd
Extended precision floating point arithmetic
-
simple_optimization
Simpler optimizers for simple optimization
-
partition
slices in-place by a predicate
-
rexl
Common Library for Rust
-
cyclic_list
a doubly-linked list with owned nodes, implemented as a cyclic list
-
extended-isolation-forest
rust port of the anomaly detection algorithm
-
kepler_backoff
A backoff algorithm that exponentially increases the time between attempts
-
hash_ord
lib contains OrdMap(avl tree) and HashMap(use avl to resolve collision);
-
flashtext2
The FlashText algorithm implemented in Rust
-
sort_library
sorting algorithms in Rust
-
re_analytics
Rerun's analytics SDK
-
pretty-hash
Output binary buffers as a nice, shortened hex string
-
compound_factor_iter
Iterator types for output permutations from a function combining multiple discrete factors
-
affinityprop
Vectorized and Parallelized Affinity Propagation
-
ibmfloat
IBM floating point number types
-
pi_ext_heap
Extending the heap supports deleting and modifying the elements at the specified location. When the elements in the heap move, the callback function will be called
-
logru
A small, embeddable and fast interpreter for a subset of Prolog
-
rs_sha224
rs_sha224
is a Rust implementation of the SHA-224 cryptographic hash algorithm, part of the largerrs_shield
project. This package provides SHA-224 hashing functionality in a standalone manner… -
juxt_adler32
just adler32, nothing else
-
anyhash
Traits and utilities for making hashes of any type
-
clipper2-sys
Boolean operations on polygons (Clipper2 wrapper)
-
geos-sys
GEOS C API bindings
-
hash-roll
Rolling hashes & Content Defined Chunking (cdc)
-
rxqlite-tests-common
A distributed sqlite database built upon
openraft
,sqlx
andsqlite
-
perm
-
tokenizations
alignments library
-
bit-list
A lazy list of bits
-
geqslib
Equation solving made easy in Rust and beyond!
-
fnv_rs
Fowler–Noll–Vo hash function including 32, 64, 128, 256, 512, & 1024 bit variants
-
graph_safe_compare
Equivalence predicate that can handle cyclic, shared, and very-deep graphs
-
coord_transforms
performing coordinate transformations
-
poly_it
A no-std library for manipulating polynomials with slice support and minimal allocation
-
xyzvec
Statically allocated fixed-size vectors for working in 2 and 3 dimensions
-
bogosort
implemented in Rust
-
rlifesrc-lib
A Game of Life pattern searcher (library)
-
atlas-rb-tree
A textbook implementation of a Red-Black Tree
-
adqselect
A lightweight crate that brings an implementation of nth_element by using the adaptive quickselect algorithm by Andrei Alexandrescu
-
hungarian
fast implementation of the Hungarian (Kuhn-Munkres) algorithm
-
lib_algorithms
Библиотека алгоритмов
-
rand-functors
A zero-cost abstraction for sampling from and enumerating the outcomes of a random process using the same code
-
gym-rs
OpenAI's Gym written in pure Rust
-
uvgen
Triplanar texture coordinates generator and packer
-
svg2polylines
Convert SVG data to a list of polylines (aka polygonal chains or polygonal paths)
-
hashers
A collection of non-cryptographic hashing algorithms for Rust
-
ringstack
A very simple circular buffered stack implementation
-
pagerank_rs
computing PageRank, optimized for performance and flexibility
-
naive-cityhash
A naive native 64/128 bit cityhash implementation for databend
-
redux-rs
Redux
-
here_be_dragons
Map generator for games
-
number-encoding
Combinatorial and factorial number systems
-
prexel
A math expression evaluator
-
sparse-bitfield
Bitfield that allocates a series of small buffers
-
permutate
Generic permutator that permutates singular and multiple lists
-
poisson-diskus
Poisson disk distribution sampling
-
imei
number validator
-
breakout
detection for Rust
-
teeint
A teeworlds variable int packer/unpacker
-
ntree-rs
A mutable n-tree with async support
-
scuttle
A multi-objective MaxSAT solver
-
epimetheus
prometheus-compatible metrics framework
-
isochronous_finite_fields
Isochronous implementation of GF(2^8) arithmetic
-
worldgen
Noisemap and world generation library
-
sortby
adds convenient sort functions for Iterators
-
mahf
A framework for modular construction and evaluation of metaheuristics
-
closest
nearest neighbor implementation
-
lindenmayer
Memory Efficient Lindenmayer-Systems
-
iter-set
Set operations on sorted, deduplicated iterators
-
fleetfs_raft
language implementation of Raft algorithm
-
zw-fast-quantile
Zhang-Wang fast quantile algorithm in Rust
-
bigbit
Implements the BigBit format, allowing for compact storage of arbitrarily large numbers
-
heapz
Heap/Priority Queue implementations
-
para-graph
"Para-Graph" delivers swift, parallel graph algorithms in Rust, optimized for CPU and GPU. Ideal for HPC workflows.
-
marzullo
Marzullo's algorithm
-
vrp-scientific
An extension logic for solving scientific VRP
-
acorn_prng
A no_std, 0 dependency, pseudo-random number generator based on the ACORN algorithm
-
ju-tcs-tbop-24-bb
head and tail library
-
iterslide
A "sliding window" iterator
-
rand_distr
Sampling from random number distributions
-
dfo
Differentiable Floating-point Operations in Rust
-
hora-new
Hora Search Everywhere
-
babygiant-alt-bn128
implementing a multi-threaded version of the baby-step giant-step algorithm on the Baby Jubjub curve (it is the curve whose base field is the scalar field of alt-bn-128 aka bn254) to decrypt u40 integers…
-
cipher-crypt
A cryptographic tomb of ciphers forgotten by time
-
mail-headers
[mail/headers] header parts for the mail crate (inkl. header map and standard header impl)
-
divider
low level 2D path linearize and trapezoidator.fork from makepad
-
raphtory-pymodule
Python package for raphtory, a temporal graph library
-
sdset
Set operations for sorted and deduplicated slices. Much performances! Such Wow!
-
tipping-rs
Token Interdependency Parsing (Tipping) algorithm
-
meza
in-memory data table written in Rust
-
robinson_mmodules
direct implementation of the algorithms presented in "MODULES IN ROBINSON SPACES" by MIKHAEL CARMONA, VICTOR CHEPOI, GUYSLAIN NAVES AND PASCAL PREA. It can determine if a given…
-
enso-optics
functional optics
-
fenris-sparse
Sparse matrix functionality for fenris
-
cucoqu
cucoqu is a Rust library for converting between different types of Bézier splines. Currently it only supports the types most commonly used in type design and drawing curves: cubic Bézier curves…
-
rdeck
choosing distinct random elements
-
bex
working with boolean expressions (syntax trees, decision diagrams, algebraic normal form, etc.)
-
eom
Configurable ODE/PDE solver
-
qdft
Constant-Q Sliding DFT
-
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
-
entro-spin
Entro Spin is a 64-bit, true-random number generator algorithm
-
apodize
iterators that yield generalized cosine, hanning, hamming, blackman, nuttall and triangular windows
-
algorithm_playground
Algorithms Playground: To learn and understand the working of different algorithms in Computer Science
-
zvxryb-broadphase
A broadphase collision detection library
-
moco_abm
MOCO - Anytime Behavior Model (moco_abm)
-
eviolite
Toolkit for working with evolutionary algorithms
-
phi-detector
Phi Accrual Failure Detector
-
topojson
TopoJSON utilities for Rust
-
small_str
A String-like but using SmallVec internally
-
alass-core
Automatic Language-Agnostic Subtitle Synchronization (Library)
-
libgdx-xs128
minimalist no_std clone of the Xorshift128+ algorithm used in the libgdx Java library
-
insides
A compact, high performance space filling curve library for Rust
-
curri-fsm
Functional Programming Finite State Machine With curri
-
mot-rs
Dead simple multi object tracking in Rust
-
osqp
(Operator Splitting Quadratic Program) solver
-
clipper2
A polygon Clipping and Offsetting library for Rust
-
abow
Visual bag of words for fast image matching
-
endicon
Implementations of codicon traits for endianness encodings
-
primecount
Rust wrapper for https://github.com/kimwalisch/primecount
-
citi
Read and write CITI files
-
capyKEM
Exercise in quantum-resistant cryptographic algorithm design
-
quad-rand
Pseudo random implementation with std atomics
-
vec-drain-where
alternative
Vec::drain_filter
impl -
sainte_lague
Sainte-Laguë method for seat distribution used in multiple parliamentary elections all over the world
-
oca-dag
OCA DAG
-
aabel-hashmap-rs
implements extensions for HashMap
-
geometric_algebra
Generate(d) custom libraries for geometric algebras
-
num-to-words
Number to words converter
-
bloom-filters
Rust port of https://github.com/tylertreat/BoomFilters
-
rootfind
Root-finding algorithms
-
vec_to_array
Moves a heap allocated
Vec<T>
to an stack allocated array of typeT
and sizeN
-
search_trees
binary search tree, red-black tree, and AVL tree
-
shm_ring
A directional ring buffer for message passing between shared memory
-
xcov
Knuth's Algorithm X (featuring dancing links) for solving exact cover problems
-
cbsrs
A Circular Binary Segmentation algorithm
-
sea-canal
Identifies patterns in sequences of integers
-
watermill
Blazingly fast, generic, and serializable online statistics
-
detect-lang
Language detection given paths and extensions
-
peepmatic-automata
Finite-state transducer automata
-
metromc
Markov chain Monte Carlo sampling using the Independence Metropolis-Hastings algorithm
-
postman-api
Postman client, generated from the OpenAPI spec
-
hierarchical_pathfinding
Quickly approximate Paths on a Grid
-
beetle_bits
A collection of bit-based types. Currently only u1 (1bit uint) and f3 (3bit float) are implemented
-
bevy_cells
Bevy library for working with entities in grids
-
ddgg
A stable graph with undo/redo built in
-
sudoku-variants
A flexible Sudoku engine that supports common variations and custom rules
-
sayegh_bit_parser
that parses odd/even bits in serial mode in byte buffers and parses them out after grouping them in byte buffer group. Also, there are file reading and writing functions using the
Vec::<u32>
type in this library. -
zwohash
A fast, deterministic, non-cryptographic hash for use in hash tables
-
secwords
secure and safe password container
-
prime-number-utils
generate prime numbers and to determine whether a number is prime efficiently
-
fast-blurhash
A faster implementation of the BlurHash algorithm used to generate better looking placeholder for websites and mobile apps
-
ahrs
port of Madgwick's AHRS algorithm
-
polymur-hash
Polymur hash function
-
external_sort
ability to perform external sorts on structs, which allows for rapid sorting of large data streams
-
avm1-emitter
AVM1 emitter
-
wave-function-collapse
Converts nodes and their restrictions into a collapsed node state based on the selected algorithm
-
nml-matrix
A small library to work with matrices
-
toposort-scc
Kahn's algorithm for topological sorting and Kosaraju's algorithm for strongly connected components
-
bit-matrix
bit matrices and vectors
-
plr
Performs greedy or optimal error-bounded piecewise linear regression (PLR) and spline regression
-
treeculler
help with frustum culling
-
loop
The package allows for processing iterators in parallel
-
snaplog
easily recording changes to values
-
nd-triangulation
Arbitrary dimensional triangulations using CGAL
-
radix
Convert any {u8, u16, u32, u64, u128, usize} to another radix
-
sliding_windows
a non-copying implementation of a sliding windows iterator adaptor
-
fhash
Blazingly fast hash for HashMaps in Rust
-
cpp_utils
interoperability with C++
-
sorting_rs
Collection of sorting algorithms implemented in Rust
-
avalog
An experimental implementation of Avatar Logic with a Prolog-like syntax
-
clusterphobia
Algorithms and data structures for unassisted clustering that employ the Hilbert Curve
-
staticstep
truly zero-cost alternatives to
Iterator::step_by
for both incrementing and decrementing any type that satisfiesRangeBounds<T: Copy + Default + Step>
-
kindness
Methods for returning random elements from an iterator
-
tessellation
3d tessellation library
-
symbolic_polynomials
manipulation of polynomials over the integers
-
acap
As Close As Possible — nearest neighbor search in Rust
-
kmeans
Small and fast library for k-means clustering calculations
-
rmath
math library
-
kendalls
Kendall's tau rank correlation
-
octarine
Color manipulation library
-
crc32-v2
A port of the CRC-32 algorithm to Rust
-
debris
the data structure
-
rsbalancer
that implements load balancing algorithms
-
tugger-wix
Interfaces to the WiX Toolset to produce Windows installers
-
drain-rs
Automatically cluster semi-formatted text with the drain algorithm
-
nnf
Negation Normal Form manipulation library
-
binpack2d
A two-dimensional rectangle bin-packing algorithm
-
cityhash-rs
Rust no_std implementation of Google Cityhash v1.0.2, v1.0.3, and v1.1.0
-
rusty-rsa
A basicass rsa algorithm implementation
-
floating-distance
Measure distance between floating-point vectors in Rust
-
mahf-bmf
A collection of common continuous benchmark functions for MAHF
-
censor
text profanity filter
-
ring_buffer
RingBuffer is a queue with added random access
-
merging-iterator
An iterator to return the elements of two independently ordered iterators in order
-
truck-polymesh
defines polygon data structure and some algorithms handling mesh, including meshing the shapes
-
castle_tokenizer
Castle Tokenizer: tokenizer
-
topset
Top N selector
-
numa_maps
Parse the numa_maps file
-
seadawg
that implements the online algorithm for Direct Acyclic Word Graph (DAWG) and Compact Direct Acyclic Word Graph (CDAWG)
-
byte_rb
byte ring buffer
-
rusty-rootsearch
This package implements general one-dimensional root-finding algorithms built on the shoulders of the num_dual crate
-
shadowcast
recursive shadowcast visible-area detection algorithm
-
grabbag
A random grab-bag of functionality
-
random-string
Allows to generate random strings based on a given charset and length
-
bidir-map
Bidirectional map implementation for Rust
-
rcalc_lib
Mathematical expression calculation library
-
dilate
A compact, high performance integer dilation library for Rust
-
smbus-pec
Minimal portable implementation of SMBus Packet Error Code calculation algorithm
-
nyar-number
Numeric types with GC optimization
-
xmlwriter
streaming XML writer
-
libreda-pnr
Algorithm interface definitions of the LibrEDA place-and-route framework
-
hexagex
Match binary data with hexadecimal regexes
-
rs_sha3_256
rs_sha3_256
is a Rust implementation of the SHA3-256 cryptographic hash algorithm, part of the largerrs_shield
project. This package provides SHA3-256 hashing functionality in a standalone manner… -
grambulate
grambulation for positive integers in Rust
-
gcd-bitwise
The binary Euclidean algorithm for computing gcd
-
coinutils-src
Redistribution of Coin-OR CoinUtils as a crate
-
fuzzy_trie
Key-value collection to make fuzzy searches
-
ironstorm_lookup
Lightning fast lookup table for auto completion, type ahead, suggestion engines
-
frand
Blazingly fast random number generation library
-
gamemath
math library for game development, written in Rust
-
cint
A lean, minimal, and stable set of types for color interoperation between crates in Rust
-
umeyama
An algorithm for finding the optimal translation, rotation, and scaling that aligns two sets of points with minimum root-mean-square deviation (RMSD)
-
dynalock
A lease based distributed locking algorithm with support for DynamoDB
-
sbitty
defining bitwise operations on standard integers type
-
fletcher
A dependency free implementation of the Fletcher's checksum algorithm
-
isla-lib
Isla is a symbolic execution engine for Sail instruction set architecture specifications. This crate implements the core symbolic execution engine as a library.
-
algs4
Algorithms, 4ed. MOOC in Coursera. in Rust.
-
pow2
Represents a non-negative power of 2, by storing its exponent
-
finny
Finite State Machines with a procedural builder-style API and compile time transition checks
-
pregel-rs
A Graph library written in Rust for implementing your own algorithms in a Pregel fashion
-
adapton-lab
Testing and performance evaluation suite for Adapton
-
framp
Fork of James Miller's Ramp, a high-performance multiple-precision arithmetic library
-
kaminpar
Rust wrapper around KaMinPar which is a shared-memory parallel tool to heuristically solve the graph partitioning problem
-
divsufsort
Rust port of Yuta Mori's divsufsort
-
bip_util
Bittorrent Infrastructure Project
-
hasher
Package hasher provides a Hasher trait
-
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.
-
blossom
algorithm to get a maximum matching in an undirected graph
-
gamma
Graph primitives and traversals for Rust
-
reductive
Optimized vector quantization for dense vectors
-
n18game
assets and logic for 18xx games
-
constrained_int
Integers that are constrained within inclusive ranges
-
mesh-sweeper
Mesh sweeping algorithms!
-
geometrize-sys
geometrize bindings
-
rscompress-transformation
data transformation supporting rscompress
-
syntree_layout
visualize trees from the 'syntree' crate
-
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…
-
superslice
Extensions for slices
-
exxact
drop-in float replacement for exact arithmetic
-
multi_iter
Iterator for acting on multiple elements at a time
-
libhumancode
A
no_std
compatible library that provides a function to enode binary data up to 150 bits in a human friendly format -
algorithm_rust
some common rust_algorithms, Everyone can participate, and the project will continue to be updated, all the algorithms comes from <Introduction to Algorithms III>
-
progress-encode
Progress ENCODE function
-
static_str_ops
A package allows using static strings with non-trivial operations, e.g.,
concat!
,format!
,call_once
, and more -
random-manager
Rust random manager
-
magikitten
Easy Fiat-Shamirization using Meow
-
ritehash
A tiny, fast, zero-dep and no_std fxhash fork. More up to date.
-
siphash_c_d
A no-std, safe, generic implementation of the siphash_c_d algorithm
-
lp-modeler
A linear programming modeller written in Rust. This api helps to write LP model and use solver such as CBC, Gurobi, lp_solve, ...
-
based16
BASE-16(HEX) implementation for chads
-
dfp-number-sys
Rust bindings for Intel® Decimal Floating-Point Math Library
-
org-rust-exporter
exporter for org mode documents parsed with
org-rust-parser
-
mvnc
Wrapper around the Movidius Neural Computing stick C API
-
gramschmidt
Classical, Modified, Reorthogonalized Gram Schmidt Orthogonalization and QR decompostion
-
cgl-src
Redistribution of Coin-OR Cgl as a crate
-
probably
various approximate computing algorithms
-
test-data-generation
light-weight library that analyzes sample data to build algorithms and generates realistic test data
-
fluent-comparisons-macros
Macros for the fluent-comparisons crate
-
srtree
SR-Tree: a high-dimensional nearest neighbor search index
-
arrsac
From the paper "A Comparative Analysis of RANSAC Techniques Leading to Adaptive Real-Time Random Sample Consensus"
-
memmem
Substring searching
-
clone_dyn
Derive to clone dyn structures
-
rsfsm
Rust Finite State Machine Library
-
grid_shapes
A general purpose 2d grid shape library
-
range-reader
Converts low-level APIs to read ranges of bytes to
Read + Seek
-
ergothic
setting up and running distributed Monte-Carlo statistical simulations. Designed primarily for lattice QCD.
-
ontolius
empowering ontology-driven algorithms
-
fuzzerang
Efficient random number generators and distributions for fuzzing
-
svg-diff
Find the diff between 2 SVGs in the form of a list of operations to get transform from one SVG to the other
-
or-tools
Unofficial Rust wrappers to the C++ library Google OR-Tools, open source software for combinatorial optimization
-
rand-bits
Random number generators with a fixed number of set bits (ones)
-
fossil-delta
functions for calculating differences between strings and applying calculated deltas
-
paragraph-breaker
Knuth-Plass algorithm for breaking paragraphs into lines
-
powierza-coefficient
Powierża coefficient is a statistic for gauging if one string is an abbreviation of another
-
geometry_tools
Efficient computation of single precision geometric data
-
xxhrs
Safe XXHash and XXH3 bindings
-
aabel-bloom-rs
implements the Bloom filter
-
math
A math library
-
vector-space
Useful traits for working with vector spaces
-
lis
Longest increasing subsequence algorithm
-
ldpc
A toolbox for classical and quantum LDPC codes
-
chull
Convex hull approximation
-
mapwords
HashMap based keyword extraction
-
kube_quantity_2
kube_quantity is a library adding arithmetic operations to the Quantity type from the k8s-openapi crate
-
inexor-rgf-model-random
Inexor - Reactive Graph Flow - Model - Random
-
linfa-linalg
Pure-Rust implementation of linear algebra routines for ndarray
-
yices2-sys
Low level Rust bindings to the Yices 2 SMT solver
-
typed_shapefile
Read & Write .dbf in Rust
-
continent-code
Continent Code
-
buf-min
Minimal utf-8 safe buffer traits
-
quickcheck_seedable
Automatic property based testing with shrinking
-
canonical-form
Reduce graphs and other combinatorial structures modulo isomorphism
-
gosh-lbfgs
Fast and safe Rust implementation of LBFGS and OWL-QN algorithms ported from Naoaki Okazaki's C library libLBFGS
-
cosyne
neuro evolution through cooperatively coevolved synapses
-
fst
Use finite state transducers to compactly represents sets or maps of many strings (> 1 billion is possible)
-
bresenham_zip
Iterator to perform Bresenham over two lines of the same triangle simultaneusly for triangle rasterization
-
amadeus-streaming
SIMD-accelerated implementations of various streaming algorithms, including Count–min sketch, Top k, HyperLogLog, Reservoir sampling
-
fmerk
Merkle key/value store
-
codes-check-digits
Common implementation of check digit algorithms
-
elias-fano
encoding in Rust
-
fancy_sort
Implementations of different sorting algorithms in Rust!
-
scialg
A collection of scientific algorithms
-
exact-cover
(WIP) Asynchronous exact cover solver library using Knuth's dancing links algorithm
-
advancedresearch-tree_mem_sort
An in-memory topological sort algorithm for trees based on Group Theory
-
packr2
a few packing algorithms for your needs
-
pso
Particle Swarm Optimizer
-
random-branch
macro to select a random branch like match
-
hotdrink-rs
HotDrink in Rust
-
hilbert-curve-rust
Basic Hilbert curve algorithm
-
pack_it_up
that implements various bin packing algorithms
-
rgeometry
High-Level Computational Geometry
-
rkr-gst
Running Karp-Rabin Greedy String Tiling algorithm
-
rand_xorshift
Xorshift random number generator
-
xcsp3-rust
that help constraint programming solvers implemented by Rust to read XCSP3 files
-
rust-eratos
'Sieve of Eratosthenes' for rust language practice
-
unik
A Powerful Universally Unique Identifier (UUID)
-
jumphash
A Fast, Minimal Memory, Consistent Hash Algorithm
-
three-style-lib
A 3x3 Rubik's Cube three style library
-
rustonomicon_optima
Various algorithms for optimization
-
dammcheck
Damm Algorithm in various bases/alphabets
-
round_robin
Create a vector of rounds and their respective matches in a tournament, using the Round-robin algorithm
-
bit_combi_iter
An iterator to iterate all bit combinations less than given unsigned integer
-
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
-
numerilib
Mathematics Library
-
pso_rust
famous PSO method
-
classify
A collection of algorithms for categorizing 1D data
-
tree-struct
A general-purpose Tree implementation in Rust
-
string_calc
Perform calculations based on String to avoid floating point errors
-
dahl-salso
SALSO algorithm is an efficient greedy search procedure to obtain a clustering estimate based on a partition loss function. The algorithm is implemented for many loss functions, including…
-
basic_dsp
Digital signal processing based on real or complex vectors in time or frequency domain
-
easy_base64
The package provides the base64 encode/decode functions
-
tri_poly_moment
Calculate moments of random variables. The distributions of the random variables are normal, uniform, and exponential.
-
rtriangulate
Delaunay triangulation on a set of points
-
simple-pagerank
calculate the PageRank of a graph
-
rrt
Path finding using dual-RRT connect
-
morel
A string searching library
-
kahan
types to perform Kahan summation
-
rustyard
A Shunting Yard implementation and calculator. This crate is able to calculate basic math expressions passed to it as strings and return a 64-bit floating point return value.
-
simple-easing
Set of simple easing functions
-
pheap
A (fast) implementation of pairing heap data structure for priority queue and some graph algorithms
-
dess-core
Differential Equation System Solver (DESS) is a Rust crate implementing fixed-step and adaptive-step solvers and designed especially for modeling physical systems. Seven explicit ordinary differential equation (ODE)…
-
fpopt
a wrapper around manipulating floating point flags
-
stringsort
Pathological sorting of string characters
-
custom-rust-stemmers
Experimental fork of: A rust implementation of some popular snowball stemming algorithms
-
hammer-and-sample
Simplistic MCMC ensemble sampler based on emcee, the MCMC hammer
-
delsum-lib
most functionality for the delsum crate
-
mocats
A 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).
-
radix-ecmascript
Convert floating-point types to string representation as defined in ECMAScript Language Specification Section 9.8.1
-
xor_rand
An arbitrary byte length, counter based PRNG crate
-
icp_2d
A 2D Iterative Closest Point implementation in Rust
-
library_of_babel
Babel in Rust
-
scopegraphs-lib
A port of scopegraphs to Rust
-
dryip
Short 🩸 Rust 🦀 code snippets for inspiration
-
pyrand
Pure rust implementation of python's random module with compatible PRNG behaviour: seeding with equivalent values will yield identical PRNG output
-
borrowned
Borrow-or-owned values
-
classific
Classifications, comparator and equivalence class implementations
-
supermemo2
that implements the supermemo2 spaced repetition algorithm
-
rng_buffer
Wrappers around RNGs to buffer their output and save system calls
-
seed15
general library for working with 15 word seed phrases
-
libtqsm
Sentence segmenter that supports ~300 languages
-
env-convert
Conversion of environment variables with default values
-
halton
A module for generating Halton sequences
-
vec_mut_scan
Forward scan over a vector with mutation and item removal
-
mephisto
language implementation of Raft services
-
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.
-
marching-squares
Parallelized marching squares algorithm for constructing closed isolines / contour lines
-
bubble-sort-scala
A quick and non-optimized, cloning version of the bubble sort algorithm. Created as a showcase for publishing crates in the Rust Cookbook 2018
-
gmatlib
linear algebra in Rust and beyond!
-
range_rover
Function to pack integers into ranges
-
murmurhash3
MurmurHash3 implementation
-
stringr
random string functions
-
blake2b_simd
a pure Rust BLAKE2b implementation with dynamic SIMD
-
denlibs
general-purpose libraries
-
bogo-plus-plus
Blazingly fast 🚀 AI 🤖 Powered Sorting algorithm
-
enso-shapely
Automated typeclass derivation
-
fp-growth
algorithm in pure Rust
-
bitap
in rust
-
spherical-cow
Spherical Cow: High volume fraction sphere packing in arbitrary geometries
-
is-tree
Everything is a tree
-
dyck
running Dyck and InterDyck algorithms over languages of generic <T> token enum instances or string slice types
-
lfu
cache implementation
-
xbar
An iterator-based implementation of the locality-preserving one-sided binary tree - crossbar switch wiring design algorithm
-
dnorm
Sampling exactly from the normal distribution
-
proc-opt
WIP: Process/Job scheduling optimization library
-
blake3-std
the BLAKE3 hash function implementation with std::simd
-
afsort
American Flag sort implementation for faster sorting of Strings
-
ripgen_lib
High-performance domain-name permutation generator
-
partition-point-veb-layout
partition_point van Emde Boas layout
-
griddy
general-purpose grid/matrix
-
choose-rand
A small crate for choosing random items from a set of weighted items
-
rustimization
optimization library which includes L-BFGS-B and Conjugate Gradient algorithm
-
light-curve-common
Common tools for light-curve-* packages
-
wordlea
A algorithm to check Wordle's word guess
-
rust_poker
Rust poker library
-
mecs
An ecs library with a focus on iteration performance
-
w_inter
❄️ Weighted INTERval scheduling problem
-
numeric-algs
implementing some numerical algorithms
-
macro_machine
State machine generator using macros
-
acacia
A spatial partitioning and tree library
-
frost-schnorrkel
modular-frost Algorithm compatible with Schnorrkel
-
easing
Leveraging Rust's powerful iterators for easing
-
rustsat-cadical
Interface to the SAT solver CaDiCaL for the RustSAT library
-
password-worker
A wrapper for password hashing that can be used as shared state, and uses a rayon thread pool so it won't block the async runtime
-
temex
Regex-like temporal expressions for evaluating systems that change over time
-
pyin
pYIN pitch detection algorithm written in Rust
-
streamvbyte64
stream-vbyte codec supporting 64-bit wide values
-
pseudo_encrypt
native-Rust generic implementation of Psql's pseudo_encrypt
-
polystem
Popular stemming algorithms for Information Retrieval
-
cut-optimizer-2d
A cut optimizer for cutting rectangular pieces from sheet goods
-
buter
Fluid buffer as place for iterators
-
bitcursor
Keeps track of the bit position for an in wrapped memory buffer, and provides it with a read, seek implementation. Also applys a new trait called ReadBits which allows reading types that implement Unit from the cursor.
-
xx-hash
xxHash implementation
-
ish
Sometimes things are true-ish
-
libtess2-sys
good quality polygon tesselator and triangulator (libtess2 wrapper)
-
big_num
A big number implement in rust
-
hcompress
from CFITSIO
-
iron-shapes
Basic data types and routines for computational geometry focused on VLSI chip design
-
miraland-nohash-hasher
std::hash::Hasher
which does not hash at all -
bisector
Flexible bisect implementatation which allows the use the bisection method on arbitrary data types
-
label-propagation
Label Propagation Algorithm by Rust
-
morton
space filling curve functions
-
str-similarity
A string similarity library
-
hybrid-clocks
Hybrid Logical Clocks
-
hmmm
Hidden Markov Models in Rust
-
treelite
rust wrapper for treelite, only support predictor.predict_inst method now. Requires treelite:0.93
-
xxtea
encryption algorithm library
-
proportionate_selector
Selecting useful solutions for recombination via fitness proportionate selection
-
rand_pcg
Selected PCG random number generators
-
smeagol
Conway's Game of Life using HashLife and SIMD
-
nistrs
his crate implements statistical tests according to the NIST standard
-
sorts
A collection of sorting algorithms
-
trajectory
interpolation
-
cp-rs
Competitive programming library, especially for AoC
-
pi_guid64
An GUID Generator
-
easings-rs
easings crate without any bells and whistles
-
deranged
Ranged integers
-
pi_path_finding
A* Path Finding Algorithm
-
aobscan
multi-threaded AOB memory scanning
-
breadth-first-zip
Breadth-first
zip
guaranteeing a monotonically increasing sum of indices -
deep_core
deep prototype
-
keyde
Fast, Dependency-free Spacial Queries
-
polyline-codec
Encode and decode polylines
-
zhang_hilbert
Produces an arbitrary-sized pseudo-Hilbert scan based on “A Pseudo-Hilbert Scan for Arbitrarily-Sized Arrays” by Zhang, et al
-
spatial_hash
A 2D Spatial Hash which uses cubes, triangles and hexes
-
buffer-trigger
A data collection trigger based on the maximum number and refresh time
-
knaptime
Solve the knapsack problem and its variants
-
tacho
A prometheus-focused metrics library for Future-aware applications
-
abv
AV and BV convert functions for Bilibili videos
-
aces
Algebra of Cause-Effect Structures
-
sorted_intersection
Intersection Iterator Over Sorted Iterators
-
simplegraph
graph implementation
-
sorted-insert
traits to insert elements to a sorted collection and keep the order
-
rome
An RDF library in pure Rust
-
number-utils
A calculation crate
-
yabe
Integer bitcasts through the use of Mul and autoref specialization
-
rbuf
A general purpose ring buffer implementation with some non-standard constraints
-
query-graph
A concurrent incremental query dependency graph system
-
randomwalk
Build glorious random walks
-
soft-edge
efficient bithackery for making 3D collision meshes out of grids and stacked tile maps
-
tulip-arrform
tulip fork of arrform
-
filter
Kalman filters and other optimal and non-optimal estimation filters in Rust
-
bgjk
Boolean Gilbert-Johnson-Keerthi algorithm for determining if convex hull volumes intersect
-
spaced-repetition
A spaced repetition algorithm based on anki and supermemo
-
lz_fnv
Fowler-Noll-Vo hash functions for various integer types
-
wookong-solo
Wookong Solo driver crate
-
dia-assert
confirming user decision on important tasks
-
descartes
Imprecision-tolerant computational geometry for Rust
-
afarray
Convenience methods for working with ArrayFire arrays in Rust
-
noise-functions-config
Configurable noise generator for
noise-functions
-
ncollide3d-updated
2 and 3-dimensional collision detection library in Rust. Will be superseded by the parry3d crate.
-
crumsort
Parallel implementation of crumsort optmized for uniform distributions
-
graph_csr
that provides utility functions for manipulating graphs in a CSR format, used as the baseline for constructing powerful graph algorithms
-
word_sensitive
sensitive string matching, the implementation language is rust, and the algorithm used is ac
-
aikit
Set of algorithms and utilities for common AI and ML problems
-
etsm
Efficient Tiny State Machine using object callbacks
-
multibody_dynamics
Multibody dynamics algorithms in Rust
-
hashed-permutation
A fast, instant-access way to permute a range of numbers
-
bisection
Python bisect module
-
flowing
flow graph processing library
-
myopic-brain
Search and evaluation for determining best move available in a chess game
-
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
-
sparse_linear_assignment
Solvers for sparse linear assignment problem based on the auction algorithm
-
badsort
Some basic sorting stuff I wrote as practice in Rust. Includes my favorite algorithm, BOGO Sort!
-
permute
Generate permutations of vectors and slices in a memory-efficient and deterministic manner, using Heap's algorithm
-
lincoln_compiled
Lowest level presentation of Lincoln
-
chandeliers-std
A standard library for the Chandeliers suite
-
rusty-perm
permutation with no-std
-
rs-category
Categorical traits
-
tree-layout
Get the arrangement layout of the tree diagram
-
flot
Generate HTML documents with embedded charts using Flot
-
idhash
Calculate a Row-Invariant ID for Tabular Data
-
entro-hash
Entro Hash is a 32-bit, non-cryptographic hashing algorithm
-
cityhash-102-rs
Faithful reimplementation of CityHash v1.0.2 64bit and 128bit hashes
-
jps
Jump Point Search Implementation for Path Finding
-
smth
math library
-
genx
An easy to use and modular genetic algorithms library
-
rta-for-fps-lib
paper 'Response Time Analysis for Fixed Priority Servers' by Hamann et al
-
my-bfgs
A pure Rust implementation of the BFGS optimization algorithm
-
coupe
mesh partitioning library. It implements composable geometric and topologic algorithms.
-
optimath
Linear Algebra using const generics for no_std and specialization to enable SIMD
-
strs_tools
Tools to manipulate strings
-
cell-map
Many-layered 2D cellular generic map
-
reciprocal
Baseline implementation of integer division by constants
-
polymatheia
Mathematical types, traits, and algorithms in pure and safe Rust
-
const-crc32-nostd
A
const fn
implementation of crc32 checksum algorithm -
satlog
A logger for SAT-like solvers
-
onlinecode
"Online Codes", a type of Fountain Code
-
meowhash
Meow hash function
-
emas_rs
Rust-based EMAS optimization algorithm
-
bdecode
A Bencode decoder in Rust which uses the same algorithm as libtorrent
-
hexdump
Easy hexdump to stdout or as an iterator
-
lambert
lamber-rust is a crate helping to convert Lambert coordinates to WGS84
-
ipopt-src
Redistribution of Coin-OR Ipopt as a crate
-
xxh
XXHash algorithm implementation for Rust
-
dedup_signature
implements TextProfileSignature and Lookup3 algorithms to generates a hash/signature/footprint in order to be used for detecting duplicate documents
-
gtin-validate
Validate GTIN barcodes including UPC-A and EAN-13. This module has built-in support for GTIN-8, GTIN-12 (UPC-A), GTIN-13 (EAN-13), and GTIN-14 codes
-
maglev
Google's consistent hashing algorithm
-
modular
arithmetic in rust
-
is_i32
A blazingly fast algorithm to compute whether or not a value is an i32
-
bvrs
A lightweight rust library for BitVector Rank&Select operations, coupled with a generic Sparse Array implementation
-
aws-tree-hash
Calculate the Amazon SHA256 tree hash as described on Checksum Calculation page of the AWS S3 Glacier developer guide
-
tfhe-c-api-dynamic-buffer
helper crate for TFHE-rs (https://crates.io/crates/tfhe) to easily share buffers between C and Rust and make their destruction safe on both sides of the FFI
-
htmlprops-to-react
convert html properties to react
-
kmp
Various functions using the Knuth–Morris–Pratt algorithm to efficiently find patterns
-
subproductdomain-pre-release
Implements subproduct domain algorithm
-
atlatl
Double-array tries
-
sugiura-hiromichi_mylibrary
my personal library
-
hirschberg
Generic implementation of Hirschberg's algorithm in Rust
-
polars-algo
Algorithms built upon Polars primitives
-
fibonacci_codec
fibonacci coding for primitive integer types
-
bidivec
offering bidimensional arrays, vectors and slices, with batteries included (such as pathfinding, flood-filling and more)
-
mop
Flexible and modular single or multi-objective solver for contiguous and discrete problems
-
fast-erasure-shake-rng
Fast erasure (forward secure) sponge/duplex based PRNG using the Keccak permutation
-
rest_tensors
Provide efficient tensor operations for the Rust-based Electronic Structure Tool (REST)
-
shuffle
various shuffling algorithms over slices
-
heuristic-graph-coloring
Heuristic algorithms for graph vertex coloring
-
simplerand
fast random number generator
-
stochastic_optimizers
Generic implementations of gradient based stochastic optimizing algorithms
-
umash
Idiomatic API for the umash hash/fingerprint function
-
java_random
The java LCG and random module implementation in rust
-
sha3-asm
Raw bindings for SHA-3 algorithms written in assembly
-
weighted-rs-wasm
A libray for weighted balancing algorithm
-
bentobox
A fast, allocation-free Monte Carlo model of a top-N podium finish in racing events
-
whosly
便捷的工具库
-
autour_process
AUTOmata Utilities and Representation (AUTOUR) is a small toolbox to experiment with various kinds of automata and draw them
-
lindel
Hilbert and Morton encoding and decoding; in a word, linearising and delinearising
-
biogarden
A collection of basic bioinformatics algorithms
-
lttb
Largest Triangle Three Buckets algorithm
-
three-edge-connected
CLI tool for finding 3-edge-connected components of graphs, especially graphs in the GFA format
-
concorde
reconfigurable lattice agreement
-
fuss
Small, lightweight simplex noise generator for Rust
-
skelly
Skeleton animation and IK
-
generic_graph
implementing general purpose graphs. Including some default implementation (the latter are still WIP)
-
closest-sum-pair
Finds a pair in a list that has the closest sum to a given number
-
bitwuzla-sys
Low-level bindings for the Bitwuzla SMT solver
-
fast_id_map
fast map
-
batsat
Extensible SAT solver in Rust
-
memoires
Memoization for Rust
-
anon-vec
An Anonymous Vector that emulates dynamic typing
-
hutton-rust
The Hutton cipher implemented as a Rust crate
-
bies
Helpers for dealing with BIES vectors with text segmentation applications
-
analytic
has been renamed to be the math crate https://crates.io/crates/math
-
polyfit-rs
Polynomial fitting of data like in numpy.polyfit()
-
meealgi
A selective implementation of Jean Meeus' astronomical algorithms
-
ripped
A pure-Rust Interior-Point solver for linear programs
-
brace-expand
performs brace expansion of strings, as in shells like Bash etc
-
gemm-f32
Playground for matrix multiplication algorithms
-
numlib
numerical library implementing common numberical algorithms in rust
-
algebloat
Rust linear algebra library
-
wfc-rs
Binding to the krychu/wfc C library
-
unfold
in Rust
-
bbt
A skill-rating system similar to Elo, Glicko or TrueSkill
-
orca-rs
ORCA algorithm
-
unit_converter
READ THE DESCRIPTION BEFORE USING THE LIBRARY. Add this in your main file {use unit_converter}. This is a binary converter library. all you have to do is call the function in the…
-
minhash-rs
MinHash trying to be parsimonious with memory
-
moore-hodgson
Moore Hodgson's Scheduling Algorithm in Rust
-
fast_inv_sqrt
Fast inverse square root algorithm implementation
-
ezing
Easing functions
-
rabin_ida
Rabin's information dispersal algorithm, originally by Liam Perlaki
-
utf-8
Incremental, zero-copy UTF-8 decoding with error handling
-
easy_random
Generate random data easily with easy_random :)
-
mattr
transposing multi-dimensional data
-
rust-algorithm
algorithm
-
wordpieces
Split tokens into word pieces
-
textspan
Text span utility
-
monotonic_solver
A monotonic solver designed to be easy to use with Rust enum expressions
-
igs
solving impartial games
-
hashdozen
A novel 48 bit hashing algorithm producing human-readables hashes
-
automafish
state machine builder for creating deterministic state machines out of nondeterministic state machine definitions
-
subway
Fast, performant in-memory SkipList implemented in Rust
-
advancedresearch/piston-math_notation
Bootstrapped meta rules for mathematical notation
-
gossip
A generic gossip library that uses gossip-based peer sampling
-
dyn_array
easy to use N-dimensional dynamic array
-
hopcroft-karp
A minimal implementation of the Hopcrof-Karp bipartite matching algorithm
-
sparse_matrix
do linear algebra with sparse matrix
-
zip-fill
Iterator library
-
convolve2d
Easy and extensible pure rust image convolutions
-
yass-2
string similarity library
-
fliphash
A constant-time consistent range-hashing algorithm
-
aviary
bird combinators for Rust
-
linear-deque
A double-ended queue that can be sliced at any time without preparation
-
liff
Fast levenshtein diff, fastest as we can do with levenshtein
-
fluke-maybe-uring
Replicates some tokio-uring types to allow building code without it
-
predictive_shuffle
A vector shuffling library that allows for in-place shuffling, or predictive sub-item shuffling
-
indiscriminant
A proc-macro for mapping between values and enum discriminants
-
dahl-partition
An efficient representation of a set partition
-
seqdiff
Diff between two sequences
-
floydrivest
A lightweight crate that brings the Floyd-Rivest implementation of nth_element
-
linreg
Calculates linear regresssions of two-dimensional data. Does not use stdlib, only depends on numeric traits.
-
bloom_filter_simple
generic bloom filter implementation
-
domtree
dominance relation calculation
-
tree_traversal
Find best leaf node in a tree
-
vincenty-core
Calculate distances between two coordinates using vincenty formulae
-
osi-src
Redistribution of Coin-OR Osi as a crate
-
algorithmplus
commonly used algorithms
-
nnapi-sys
FFI to the Android NNAPI
-
numcmp
Comparison between differently typed numbers
-
wkb
Convert geo-types from georust to/from Well Known Binary
-
ringhash
Consistent hashing implementation
-
fix-rat
A rational number type with fixed denominator
-
measurement-units
basic measurements units conversion such as length, mass, time, volume, percents
-
runiverse
A pure and safe Rust library to make astronomical calculations and solve astronomical algorithms
-
floyd-warshall-alg
Floyd-Warshall algorithm supporting customization
-
graphbench
A sparse graph analysis library
-
normal-form
A trait to easily find the canonical/normal form of graph structures
-
red_union_find
union find algorithm
-
pennereq
Port of the Penner easing equations to rust
-
uniui_layout_linear_layout
Label widget for uniui_* crate family
-
regalloc
Modular register allocation algorithms
-
triangulate
Subdivides polygons into equivalent triangles
-
activation_functions
collection of activation functions
-
partitions
A disjoint-sets/union-find implementation that allows for efficient iteration over elements of a set
-
multivariate-optimization
Evolutionary optimization of multivariate functions
-
spsa
Simultaneous perturbation stochastic approximation
-
cfg-regex
Conversion from a regular expression to a context-free grammar
-
distributed-cards
Implements the mental poker shuffling algorithm
-
tlsh2
TLSH algorithm
-
randotron
Trivial little library that lets you randomly execute a closure with a sample rate
-
zpatial
Algorithms for Spatial Acceleration and Geometries
-
iterators-collection
A set of general purpose iterators useful but not included to the standard library
-
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
-
partopo
Functions to execute work described by a dependency graph
-
easylazy
Easy lazy initialization of variables
-
rustmt
A MT19937 PRNG implementation for rust
-
gndr_rust
Uses advanced techniques and algorithms to determine the gender of a user by just fucking asking them
-
reed-solomon-simd
Reed-Solomon coding with O(n log n) complexity. Leverages SIMD instructions on x86(-64) and AArch64.
-
star_rng
opinionated PRNG for easier fuzz testing
-
caldyn
Dynamic evaluation of mathematical expressions
-
bpci
Binomial proportion confidence intervals
-
oars
providing construction methods and utility functions for orthogonal arrays and strong orthogonal arrays
-
dancing-links
Exact cover solver using dancing links technique
-
balloon
Hash
-
rollercoaster
Extra iterators for grouping, sorting, arithmetic, and more
-
iterchunks
An iterator adapter to adapter that yields N elements of the iterator at a time
-
sparse
-
longest-increasing-subsequence
Find a longest increasing subsequence of some input sequence
-
space_alloc
General purpose space allocators
-
lifering
A Hash wrapper around floats
-
img_hash_median
that provides perceptual hashing and difference calculation for images. Includes median PHash
-
gray-codes
Iterators over binary Gray codes; utilities for efficiently visiting all subsets of a collection
-
is_42
blazingly fast way of checking if a variable is equal to 42
-
traversal
Generic and lazy tree traversal algorithms
-
hot-ranking-algorithm
Algorithm that measures how relevant a given data set is, kinda like Reddit
-
geo-raycasting
Ray Casting algorithm for the geo crate
-
aaplus
astronomical algorithms
-
fmul-to-int
Float multiplication to integer part
-
zero-copy-pads
Padding/aligning values without heap allocation
-
poisson
Poisson-disk distribution generator
-
statistical
statistics library
-
masker
Mask patterns in data
-
honestintervals
Comprehensive, correctly rounding interval arithmetic library
-
oblivious_state_machine
defines an abstraction level to conveniently describe state machines
-
slippy_map_tilenames
Converts lon/lat coordinates to slippy map tile format (OpenStreetMap/Google Map format)
-
qr2term
Stupidly simple Rust crate to render a QR code in the terminal
-
koek-classify
Allows for classification of values and class-specific treatment (including redaction on display)
-
rhizomedb
RhizomeDB
-
rendezvous_hash
Rendezvous hashing algorithm
-
adivon
Data Structures of daily use: Graph, HashTable, PriorityQueue, Trie, SuffixTree, Rope, SplayTree, SkipList, RedBlackTree
-
hashvec
A HashMap/Vector hybrid: efficient, ordered key-value data storage
-
extrema
C++'s minmax_element implementation in rust
-
pagefind_stem
Snowball stemming algorithms repackaged for Rust, with languages behind feature flags
-
wasmium-random
Generate random numeric, alphabet, alphanumeric, BIP39 and EFF random bytes
-
sulfa
basic algorithm library implemented by rust
-
choosen
An easy program that choose some attending person, with equal properbility for each position
-
dep-res
dependency resolution
-
summed-area-table
summed area table
-
algos
A collection of algorithms in Rust
-
quine-mc_cluskey
Quine-McCluskey algorithm and Petrick's method
-
funfsm
An FSM library where the states are functions
-
svi
a function to interpolate variables in a hashmap into a format string
-
entro-shift
Entro Shift is a 32-bit, pseudo-random number generator algorithm
-
find-simdoc
Time- and memory-efficient all pairs similarity searches in documents
-
non-dominated-sort
Fast Non-Dominated Sort Algorithm
-
gitignored
gitignore algorithm
-
pixel_formats
Types for various pixel formats
-
graphene
A general purpose, extensible Graph Theory data type and algorithm library for Rust
-
anchorhash
A consistent hashing algorithm that outperforms state-of-the-art algorithms
-
zaplib_vector
The vector library for Zaplib
-
lccc-siphash
Highly Optimized siphash implementation for use by lccc
-
pollard-p-minus-one
Pollard's p-1 factoring algorithm
-
fibonacii-heap
Priority queue implemeted using a Fibonacii Heap
-
comtesse
graph utilities
-
fractal
The package provides a multiscale modeling framework for the analysis and synthesis of positive-valued, long-range-dependent processes
-
bigs
A bipartite graph sampler
-
rdedup-cdc
Content defined chunking (and rolling hash) algos
-
broadword
algorithms
-
win95-keygen
A lightweight library to generate valid Win95 product keys
-
fenris-optimize
Optimization functionality used by fenris
-
gt-graph
base crate for a gtaph theory
-
asciimath-parser
A fast extensible memory-efficient asciimath parser
-
symmetric-shadowcasting
shadow casting FOV algorithm
-
pokereval
evaluating poker hands with 5 or 7 cards
-
normalized-hash
Cross-platform hash algorithm
-
double-buffer
double buffer generic implementation
-
beediff
LCS algorithm in various applications
-
interp1d
lightweight interpolation library written in Rust
-
idalloc
different methods of allocating unique identifiers efficiently
-
four-bar-ui
Four🍀bar GUI is a simulator, a synthesizing tool for four-bar linkages
-
lehmer
Convert between permutation vectors, Lehmer codes and decimals
-
graphannis-core
supports graph representation and generic query-functionality
-
rational_deduction
rational deduction algorithm
-
vnd_siren
A SIREN DSL/serializer
-
id_graph_sccs
Find the strongly-connected components of a graph with nodes labeled by integer ids
-
smoothed_z_score
Smoothed z-score algo (very robust thresholding algorithm)
-
ford-johnson
algorithm (aka merge-insertion sort)
-
simple_state_machine
definition of a state machine
-
ziku-algorithms
some common algorithms
-
alg-seq
containing implementations for algorithms introduced in the AlgSeq lecture at university of Kiel
-
psy-math
A fork of jet-proto-math. Helpful math utilities, used by PsyLend.
-
mctser
An incridiblely easy-to-use library for Monte Carlo Tree Search
-
wgdiff
LCS-based diff algorithm
-
cellular_lib
simulation of cellular automata
-
window-sort-iterator
An iterator adapter that sorts items within a sliding window
-
nilsimsa
locality-sensitive hashing algorithm
-
algorithms
most common algorithms
-
rust-sort
common sorting algorithms, purely for learning
-
clamps
Wrapping, saturating, and other forms of number clamping
-
xfind
Fast forward and backward stream search routines
-
crc32_light
Calculate CRC-32 checksum
-
suffix_array
Suffix array construction and searching algorithms for in-memory binary data
-
langis
A 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. -
suitesparse_ldl_sys
Raw bindings to SuiteSparse's LDL algorithm
-
clingo-sys
Raw FFI bindings to the C API of the clingo library
-
count-min-sketch
Count-min-sketch implementation
-
yeast-rs
Tiny but linear growing unique id generator
-
dft
The package provides an algorithm to compute the discrete Fourier transform
-
jay-algorithms
Internal dependency of the Jay compositor
-
dispnet-shared
Shared Library used for Dispnet
-
prng_mt
Mersenne Twister PRNG in Rust
-
fixedbitset-utils
A bunch of utility stuffs that I use when working with bitsets in Rust
-
ingrid
Dynamic two-dimensional arrays with algorithms
-
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()… -
smp
aleatorização de posição da memória
-
rust-analyzer-salsa
A generic framework for on-demand, incrementalized computation (experimental)
-
bubble-sort
A quick and non-optimized, cloning version of the bubble sort algorithm. Created as a showcase for publishing crates in the Rust Cookbook 2018
-
opti_solve
Common optimization algorithms
-
poseidon-permutation
An instantiation of the Poseidon permutation for decaf377
-
refset
A non-owning HashSet
-
ga-scheduler
A Genetic Algorithm optimizer designed for scheduling and similar tasks
-
thirtyseconds
Short Rust 🦀 code snippets for inspiration
-
yet-another-md5
compute md5 hashes from Read objects
-
tension
Tensor library with OpenCL acceleration
-
npc-engine-core
The core of the NPC engine, providing a generic MCTS framework
-
coaster-nn
coaster plugin providing Neural Network operations
-
luhn3
A Luhn validation library
-
blu
LU factorization with dynamic Markowitz search and columnwise threshold pivoting
-
swoop
lightweight optimisation algorithms in pure Rust
-
lpn
Software to study attacks on the Learning Parity with Noise problem
-
pareto_front
Builds a Pareto front incrementaly
-
box-convert
convert
-
watchmaker
A genetic algorithm implementation in Rust
-
streaming-stats
Experimental crate for computing basic statistics on streams
-
psqr
The P-Square Algorithm for Dynamic Calculation of Percentiles and Histograms without Storing Observations
-
smtlib-lowlevel
A low-level API for interacting with SMT solvers
-
hex_grid
easily work with 2d hex grids of arbitrary shapes
-
cf_dist_utils
has risk and distribution utilities
-
qrs_detector
Realtime ECG QRS detector algorithm
-
puzzles
solving puzzles like sliding puzzle
-
lcpc-2d
polynomial commitment scheme from linear codes
-
tinysort
The lowest memory footprint sorting algorithm
-
algx
Knuth's Algorithm X
-
random_lcg
lcg random number generator
-
sharded-counter
A fast and concurrent counter
-
sigalign-impl
implementations for core
-
checkdigit
Check Digit Algorithms in Rust
-
rust-fuzzy-search
Fuzzy Search with trigrams implemented in Rust
-
fastrand-contrib
Extension functionality for fastrand
-
lufact
Sparse LU factorization with partial pivoting
-
importunate
Methods for returning random elements from an iterator
-
buf-trait
abstract over [u8], str, and friends
-
block-array-cow
In memory array de-duplication, useful for efficient storing of a history of data versions
-
tempergb
Convert a color temperature to RGB values
-
vlq-bij
Bijective Variable-Length Quantity encodings
-
nlsn-delaunay
Delaunay Triangulation and Refinement implementation through Bowyer Watson incremental insertion, conflict maps and ghost vertices
-
largest-remainder-method
The largest remainder method
-
candle-gemm-f32
Playground for matrix multiplication algorithms
-
iobuf
A contiguous region of bytes, useful for I/O operations
-
case_converter
Case Converter
-
game-solver
Solve any combinatorial game
-
gt-directed-bijective-connection-graph
an implimentation of a directed bijective connection graph
-
dbus-addr
D-Bus address parsing
-
list
A singly-linked stack like list support peek
-
norm
A collection of distance metrics on strings
-
yaum
Units of Measurement
-
sample-consensus
Abstractions for sample consensus algorithms such as RANSAC
-
phreak_engine
Rule matching algorithm focussed on speed
-
gpt-partition-type
getting information about a GPT partition from its partition type GUID
-
dsar
Data Structures & Algorithms in Rust
-
cc4
Very simple implementation of the four_cc/fourcc algorithm as a const fn
-
math-concept
Common math concepts from Computer Science classes, implemented in Rust
-
scales
converting values between scales
-
isolation_forest
Isolation Forest anomoly detection algorithm
-
shufflr
Shuffle a lists using Fisher-Yates algorithm
-
soundchange
implementing sound change algorithms in Rust
-
raft-proto
Protocol definitions for the rust language implementation of the Raft algorithm
-
location_based_sharding
Right sized sharding algorithm
-
sequencer
Dependency graph processing libarary
-
when
'When' parses natural language date/time and produces computer friendly output structures
-
timely_sort
Sorting infrastructure for timely dataflow
-
first_order_logic
first-order logic
-
extfsm
Extended Finite State Machine with internal event queue and entry/exit transitions
-
kodama
Agglomerative hierarchical clustering
-
search-autocompletion
Search Auto Completion
-
iso_iec_7064
Support for check digit operations conforming to ISO/IEC 7064
-
moon_stats
A set of statistical functions
-
eudex
A blazingly fast phonetic reduction/hashing algorithm
-
tradestats
Metrics
-
partition-iterator
Iterator adaptors that enumerate all partitions or all k-partitions of an iterator's content
-
linprog
A linear programming library
-
permutation-rs
Do calculations with groups
-
hmm
Hidden Markov Model
-
yaml-hash
Improved YAML Hash
-
num-cmp
Comparison between differently typed numbers
-
bsutils
Binary search utilities with efficiency
-
uno
Encode floats in the range [0.0, 1.0] as unsigned integers!
-
allowance
Rust Datatype to representate the deviation of measures
-
bvh2d
A fast BVH using SAH for 2d
-
cmsis_dsp_sys_pregenerated
Low-level interfaces to the ARM CMSIS-DSP library
-
minecraft_launcher_core
A Minecraft launcher library written in rust
-
elm-solve-deps
A dependency solver for the elm ecosystem
-
rsneat
Neuroevolution of Augmenting Topolgies implementation
-
bravery_router
Radix Tree implementation
-
redblackbst
Rust Algorithms
-
cmsis_dsp
Bindings to the CMSIS DSP library for ARM Cortex-M processors
-
branchy
tools for generating strings and sequences using context-free grammars
-
rutil
containing utilities for creating programs in rust
-
primter
Prime number iterator based on sieve of Eratosthenes
-
grid-point
A Point represents an [x, y] coordinate on a grid or matrix
-
urandom
Produce and consume randomness, to convert them to useful types and distributions, and some randomness-related algorithms
-
matchertools
Implements the Gale-Shapley algorithm and exposes it as an API
-
blurhash-fast
blurhash
-
list_comprehension_macro
A macro for making Python like Vector and HashMap comprehensions
-
rosomaxa
algorithm and other building blocks for creating a solver for optimization problems
-
fast-voxel-traversal
Fast voxel traversal iterators for both 2D and 3D
-
den
A general delta encoded network difference algorithm
-
density-mesh-image
Image module for density mesh generator
-
peepable
Peekable that allows peeping into immutable references
-
easey
Easing functions for interpolation between 0.0 and 1.0
-
backtrack
Solve hard constraints easily
-
sortnet
Sorting Networks for Rust
-
ram
that helps to parse source code with finite state machines
-
parallel-factorial
fast, parallel factorial calculator
-
polyline_rust
encode/decode polylines in "Encoded Polyline Algorithm Format"
-
audiograph
An audio graph optimised for performance and limiting runtime allocations
-
generic-rcsp
solving the resource constrained shortest path problem using a dynamic programming labeling algorithm. Was developed for solving pricing problems for branch-and-price.
-
seek_bufread
A drop-in replacement for std::io::BufReader with seeking support
-
frechet
basic autodifferentiation
-
modinverse
Small library for finding the modular multiplicative inverses
-
graph-algo-ptas
PTAS on planars and other graph classes
-
gworld
evolve genetic algorithms (beginner friendly to advanced) and reduce boilerplate setup
-
mx3
algorithm providing a bit mixer, pseudo-random number generator, and hash function
-
peak_finder
An algorithm for identifying peaks from line data, such as from accelerometer or spectral data
-
lazy_futuristic
Initialize variables lazily, futuristically
-
eprng
Extremely Pseudo RNG
-
wildescape
string matching with questionmark, star wildcard operator and an escaped character
-
fastfibonacci
Fast Fibonacci encoding/decoding
-
simple-soft-float
soft-float library that intends to be a straightforward reference implementation of IEEE 754
-
rscompress-coding
data coding supporting rscompress
-
gut
Geometry utilities: storing, manipulating and processing geometries
-
mcmf
solving instances of the minimum cost maximum flow problem. It uses the network simplex algorithm from the LEMON graph optimization library.
-
fixed-length-search
The fastest algorithm for finding a path with a specific length in a graph
-
binary_set
Binary set file
-
mincost
A collection of modern heuristic optimization toolkit
-
pkbuffer
Buffer objects made for arbitrary casting and addressing!
-
gsl_rust
A safe GSL wrapper
-
pi_hash
Provide unified hasher, HashMap and HashSet, The hash algorithm used can be determined by compiling conditions
-
ssri2
Various utilities for handling Subresource Integrity
-
indexsort
sort crate, porting Golang sort package to Rust
-
arrow-cast-guess-precision
Arrow cast function alternative with timestamp integer guessing precision
-
hulahoop
An efficient consistent hash ring implementation supporting virtual nodes
-
rand_seeder
A universal random number seeder based on SipHash
-
yavomrs
Variation of Myers for generic containers
-
blurhash-ng
A pure Rust implementation of blurhash
-
argdata
binary serialization format
-
seastar
Dependency-free, non-generic implementation of the A* pathfinding algorithm
-
speedytree
Canonical and RapidNJ implementations of Neighbor-joining in Rust
-
suitesparse_camd_sys
Raw bindings to SuiteSparse's CAMD algorithm
-
weighted-median
Calculate the weighted median
-
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]
-
dep_crusher
Starting at a root node, traverse the dependency graph and flatten it
-
fuzzy_dbscan
FuzzyDBSCAN algorithm
-
baseperm
generating valid permutations of encoded inputs
-
aflak_cake
Computational mAKE: Manage a graph of interdependent functions
-
rsort
perform different sorting algorithms on lists of numbers
-
sorting
The world's best, finest and inefficient sorting algorithms
-
path-finding-lib
variety of path finding and graph operations. Work in progress.
-
randperm-crt
Small library for generating random permutations
-
diagonal
Extract diagonals from a matrix in various directions
-
openraft-rocksstore
A rocksdb based implementation of the
openraft::RaftStorage
trait -
sprs_suitesparse_camd
sprs bindings to the suitesparse camd fill-in reducting ordering
-
rolling-dual-crc
Rolling CRC with 32-bit CRC32C and 64-bit CRC64/XZ
-
advanedresearch-trinoise
A mathematical noise pattern of 3 values based on Number Theory and Set Theory
-
float_eq
Compare IEEE floating point primitives, structs and collections for equality
-
pushgen
Push-style design pattern for processing of ranges and data-streams
-
gt-hypercube
an implimentation of hyper cube
-
markov_rs
fast Markov chain generator in Rust
-
intersect2d
Line segment intersection detection
-
n18tile
Defines 18xx tile elements and track networks
-
uncertainty
allow the creation and arithmetic operations on numbers with uncertain values
-
benford
test the Benford-ness of a given set of numbers
-
rlp-iter
An iterator following a space-filling pattern over a given range
-
generic-state-machine
that allows to create generic or Moore or Mealy state machines that allows the use of custom transition functions
-
blake
hash function for Rust via FFI
-
enso-generics
supporting generic programming
-
mmseg
Chinese word segmenation algorithm MMSEG in Rust
-
pathfinding_astar
A-Star pathfinding algorithm that can process absract and grid-like paths
-
contour
Compute isorings and contour polygons (using marching squares algorithm)
-
optimization
Collection of optimization algorithms
-
stack
DSTs and arrays on the stack!
-
z3-sys
Low-level bindings for the Z3 SMT solver from Microsoft Research
-
tabu
local search functionality in general, plus derived applications such as local search based clustering
-
rust_wfa
wavefront sequence alignment algorithm
-
neato
package of useful tools
-
inexor-rgf-plugin-random
Inexor - Reactive Graph Flow - Plugin - Random
-
snowgen
generating unique, time-based IDs using the Snowflake algorithm
-
hamming
Count ones, fast (aka popcount, hamming weight). This provides a performant popcount and bitwise hamming distance for a slice of bytes.
-
noice
Fork of noise-rs, a procedural noise generation library
-
shr3
3-shift register random number generator
-
convert-byte-size-string
Convert a byte size string to a u128 value
-
sknife
Swiss knife for common rust functional utilities
-
power-consistent-hash
Power consistent hash - constant expected time constant memory consistent hash
-
hashids
HashIds Rust Implementation
-
minisat
interface. Solves a boolean satisfiability problem given in conjunctive normal form.
-
Algod
Many types of rust algorithms and data-structures
-
or-iterator
Rust iterator which takes two iterators and returns non-empty one
-
rle-bitset
A no-std, no-alloc trait for querying and manipulating bits in a
[usize]
and iterating their run lengths -
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
-
searchsort
trait implementing Binary Search and Quick Sort algorithms
-
srand
Random number generators and other randomness functionality with simple apis to use
-
labirust
Naive rust crate for implementing and testing maze solving Algorithms
-
fxtypemap
A fast type map based on internal hasher used in Firefox and Rustc
-
lgeo
2D Geometry library, focusing on collision computation
-
crc-32c
Comput CRC-32C using accelerated SIMD and fusion algorithm
-
indented-blocks
parser for indented blocks
-
uncertain
Fast and correct computations with uncertain values
-
phonics
Phonetic spelling algorithms in Rust
-
aleph-alpha-tokenizer
A fast implementation of a wordpiece-inspired tokenizer
-
astro-notation
transcoding between Astro Notation Format and Native Rust data types
-
boomphf-patched
Scalable and Efficient Minimal Perfect Hash Functions (version modified by Piotr Beling)
-
iobuffer
memory-based buffer for IO reading and writing
-
isogeometric_analysis
Create implementing algorithms related to Isogeometric Analysis. Bezier, B-spline, NURBS, numerical integration and isogeometric approach to PDE approximation.
-
oxygraph
Algorithms and structures on ecological graphs
-
best-path
Shortest/longest path algorithms, where edge weight accumulation via either a sum or a product
-
hnsw
Fast approximate nearest neighbors
-
time_wheel
timer uses time-wheel algorithm
-
rand_rgb
Generate a random rgba-formatted color
-
finite-state-automaton
A minimal DFSA implementation based on Jurafsky & Martin (2009)
-
algo_sorting
implement all kind of sorting in the world of algorithms and more sorting methods will be implemented soon
-
mylibrary_
my personal library
-
state_machine
state machine
-
guid-partition-types
A small crate designed to work with parition types and their GUIDs
-
tui-widget-list
Widget List for TUI/Ratatui
-
radiant-utils
Radiant example code support library
-
pcoa
way to apply Principal Coordinate Analysis on a distance (dissimilarity) matrix
-
fixit
Converts infix (human-readable) expression tokens into postfix (Reverse Polish Notation) order
-
more-iter
More iterator utilities
-
nucleic-acid
Implementations of Suffix Array, Burrows-Wheeler Transform and FM-index
-
algs
Solutions for various algorithms, made as generic as possible
-
meshed
Graph creation and traversal tools
-
tempconvert
package to convert temperature into different units, and their types
-
animgraph
Animation data flow library using hierarchical state machines
-
rule30
Pseudo random number generator with cellular automaton rule 30
-
verhoeff
algorithm, for number checksums
-
broccoli-ext
broadphase collision detection algorithms
-
object-detection-opencv-rust
Object detection utilities in Rust programming language for YOLO-based neural networks in OpenCV ecosystem
-
beehave
defining and evaluating a hierarchical state machine (behaviour tree)
-
automaters
Implémentation d'automate en Rust. (FSM, NFA, DFA, NDFAE)
-
algo-rs
Set of data structures and algorithms
-
k_nearest
K-nearest neighbors search for points with maximal search radius
-
utm
Convert latitudes and longitudes to UTM coordinates and vice versa
-
picorand
A zero-dependency, no_std-compatible, easily extendable library intended for fast random number generation using the WyRand PRNG with a pico-sized footprint
-
banquo-hybrid_distance
Hybrid distance implementation for Banquo monitor
-
quotient-filter
A quotient filter implementation
-
tilecover
Generate the minimum number of tiles to cover a geometry
-
count_sort
O(n) sorting library for large datasets with small range of possible values
-
rustsat-minisat
Interface to the SAT solver Minisat for the RustSAT library
-
increment
all types of integers if it is still possible
-
signalo_sources
A collection of filters used in 'signalo' umbrella crate
-
gevlib
containing distributional quantities (CDF, PDF, Quantile, random generation) of the Extreme Value Distributions
-
kv-par-merge-sort
External sorting algorithm for (key, value) data sets
-
cauchy
Trait for real and complex numbers
-
fhex
providing the ToHex trait for converting floating-point numbers to hexadecimal
-
gearhash
Fast, SIMD-accelerated hash function for content-defined chunking
-
aliasmethod
Walker's Alias method
-
prefix-range
Compute bounds for prefix string queries for BTreeSet/BTreeMap::range
-
mycrc
Create your own cyclic redundancy check (CRC)
-
iterwindows
An iterator adapter to iterate over all contiguous windows of length N
-
opensimplex_noise_rs
OpenSimplex noise algorithm implementation in Rust
-
adversarial_search
Rust adversarial search library
-
batbox-color
Working with colors
-
minecraft_end_generation
The minecraft end generation implemented in rust
-
savage_core
A primitive computer algebra system (library)
-
bresenham
A fast, iterator-based integer-only implementation of Bresenham's line algorithm
-
hyperid
Superfast id generator
-
IntegerScaling
Calculates integer ratios and scaled-image sizes for pixel-perfect image upscaling with optional aspect-ratio correction
-
tdigest-rs
T-Digest algorithm in Rust
-
byte_arithmetic
arithmetic on byte-like objects
-
osqp-rust
The OSQP (Operator Splitting Quadratic Program) solver
-
scip-sys
Bindings for the C SCIP solver
-
iris-lib
that creates color palettes from images using the median cut algorithm
-
regex_dfa
turning regexes into DFAs
-
tenhou-shuffle
Tenhou Deck/Wall-Shuffling Algorithm
-
rdx
A collection of traits and algorithms to ease using radix sorts
-
str_sim
Calculate the similarity between strings
-
zip_eq
Zip iterator that check that its inputs have the same length
-
tw-id-num
Check or generate Taiwan ID numbers
-
numeric
N-dimensional matrix class for Rust
-
microspectrogram
no_std
library for computing spectrograms -
c2-sys
c2.h library
-
rustlearn
A machine learning package for Rust
-
learn-rust-with-bubble-sort
A quick and non-optimized, cloning version of the bubble sort algorithm. Created as a showcase for publishing crates in the Rust Cookbook 2018
-
velodyne-lidar
Velodyne lidar data processing algorithms and utilities
-
sdcons
geo-replicated distributed consensus algorithm: SDPaxos
-
gosh-fire
FIRE algorithm for geometry optimization
-
hel-colored
ANSI string colorizer and styler
-
geo-visibility
Compute visibility polygon
-
rusty_grammar
A modified CYK algorithm to work for Language
-
robust-binary-search
Robust Binary Search provides a binary search implementation which is robust against errors during the search
-
whittaker_smoother
The perfect smoother: A discrete-time version of spline smoothing for equally spaced data
-
monotree
optimized Sparse Merkle Tree
-
adler32fast
Fast, SIMD-accelerated Adler-32 checksum computation
-
tlsh-fixed
Rust port of Trend Micro Locality Sensitive Hashing
-
savant_rs
Savant rust optimization library
-
narcissistic
number searcher
-
iterutils
Provide easy way to iterate through multiple iterators in ordered/selective way
-
hidden-median
Finds the median of two lists, when merged without breaking sorted state
-
patiencediff
algorithm
-
potpack
Rust port of the potpack algorithm
-
kmers
k-mer manipulation
-
mix-distribution
Mixture distributions
-
digest-buffer
Fixed size buffer for use in cryptographic hash functions
-
phreak_rules
Rule matching algorithm focussed on speed
-
gaps
Functionality for working with gaps/holes in ordered sequences of values
-
porco
Composable probability distributions
-
mephisto-raft
language implementation of Raft algorithm
-
streemap
Set of tree map algorithms (binary, squarified, ...)
-
cavalier_contours_ffi
C foreign function interface for the cavalier_contours crate
-
RustQuant
quantitative finance
-
rast
A toy implementation of the raft consistency protocol focused on speed
-
statest
statistical test
-
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…
-
highwayhash
Bindings to AVX-2-optimized SIP-like hash functions
-
consistent_hash_ring
A flexible and efficient consistent hash ring
-
mathlogic
made by Faizan Faisal, Email: f.f.programmer@gmail.com, f.f.programmer@hotmail.com
-
basic_dsp_matrix
Digital signal processing based on real or complex vectors in time or frequency domain
-
rdftk_memgraph
Graph traits from rdftk_core::graph for simple in-memory usage
-
gbps
gossip-based peer sampling
-
ordmap
A map ordered by value
-
selecta_score
Selecta scoring algorithm
-
rustgraphblas
Wrapper for GraphBLAS.h exposing SparseMatrix and SparseVector
-
tiamat
a PRNG library
-
rs_state_machine
A business-oriented state machine library
-
building_blocks_procgen
Algorithms for procedural generation of voxel data
-
lev_distance
A copy of Levenshtein distance implementation from Rust Compiler
-
step-machine
Run your CLI program as state machines with persistence and recovery abilities
-
double_sort
fast and simple sorting algorithm which groups numbers into pairs and orders them onwards as nodes
-
bqrs
apply boolean query to text
-
soukoban
some algorithms and data structures related to Sokoban
-
grb-sys
Low level bindings to Gurobi
-
lesspass
An efficient implementation of the LessPass password generator
-
pingora-ketama
Rust port of the nginx consistent hash function
-
resistor
calculating the resistance of a resistor based on the color bands
-
weighted-rs-1
A libray for weighted balancing algorithm
-
watchmaker_vm
virtual machine for use with genetic algorithms
-
order-maintenance
Totally-ordered priorities for the order maintainence problem
-
pcg-mwc
A fast non-cryptographic psudo random number generator
-
diamond-square
Generate heightmap using diamond-square algorithm
-
pure_decimal
A decimal type with no NaN and Infinity
-
read-byte-slice
An iterator over chunks of bytes as slices from an underlying reader
-
autobahn-hash
HighwayHash, a fast and strong SIMD hash function
-
random_lfsr_256_galois
random generator imlplementation based on linear feedback shift register (LFSR, Galois variation) on 256-bit polynome
-
neutils
Utitlity functions
-
sorting_explorer
An exploration of various sorting algorithms
-
cdt
Fast, robust constrained Delaunay triangulation
-
rost
sorting
-
core_collections
copy of libstd::collections with all the parts that don't work in core removed. Most importantly, it provides HashMap and HashSet. This crate is (mostly) automatically generated from the rust git source…
-
number_easing
number easing functions
-
heapify
Convenience functions to turn slices into max-heaps
-
text_converter
A trait that helps with manipulating text
-
tokio_interval_buffer
Easy enum wrapper that implements all traits that the wrapped objects implement
-
darwin-rs
Evolutionary algorithms library written in Rust
-
gemm-c64
Playground for matrix multiplication algorithms
-
simplex_method
optimisation in linear programming using simplex method
-
ffuzzy
generate / parse / compare ssdeep Context Triggered Piecewise Hashes (CTPH)
-
cpp_map
C++ std::map emulator
-
ss-graph-rs
A graph algorithm library written in Rust, primarily featuring a function for finding all paths
-
probabilities
Compact library for sampling and calculations related to various statistical distributions
-
moon-phase
Calculates the phase and position of the moon
-
map-gen-2d
2D map generation algorithms implementaion
-
ecos-rs
Bindings to the ECOS convex second-order cone program solver
-
parser-pda
Example of a simple parser pushdown automaton implementation
-
vertical-multiplication
Vertical multiplication step by step
-
tiny_id
generating non-sequential, tightly-packed short IDs. Use block-id instead.
-
rindex
reverse nearest neighbor search index for high-dimensional clustered datasets
-
genetic-rs-common
Commonly-used parts of genetic-rs
-
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.
-
hdiff
Paul Heckel diff algorithm
-
prototty_event_routine
Pseudo-synchronous composable event-based state machines for prototty apps
-
spaced-repetition-rs
A spaced repetition algorithm based on anki and supermemo
-
fibonacci-like
A small crate to help you interact with second order sequences, such as the Fibonacci sequence, with no_std support
-
rodar
a command line tool that brings together all the functions Roy would use for analysis and decision-making
-
minterpolate
Data set interpolation for mint primitives and raw arrays
-
shoalart
(WIP) Powerful ASCII Art generator, but not yet easy to use
-
xtoken
Iterator based no_std XML Tokenizer using memchr
-
const_lookup_map
Rust map that can be defined in a const context
-
generations
running generation-based simulations in Rust
-
bruteforce
no_std-compatible brute force/string generation rust-nightly library
-
async-hsm
The lightweight asynchronous hierarchical state machine (HSM)
-
radiate_web
Train Radiate remotely
-
cogset
Generic implementations of clustering algorithms. Includes k-means, DBSCAN and OPTICS.
-
but-what-about
A permutation & combination calculation crate for rust
-
index_key
lexicographic sort order encoding
-
pi_adler32
adler32 crc check algorithm
-
math_lib_test
test Library for rust
-
sprs_suitesparse_ldl
sprs bindings to the suitesparse ldl solver
-
gchemol-neighbors
Neighborhood search for chemistry
-
building_blocks_search
Search algorithms for voxel data
-
randomkit
numpy.random
for Rust -
vconvert
vulnus to soundspace converter (or vice versa)
-
savant_core
Savant Rust core functions library
-
revonet
real-coded genetic algorithm for solving optimization problems and training of neural networks. The latter is also known as neuroevolution.
-
floatconv
Floating point conversion functions
-
microfft
Embedded-friendly Fast Fourier Transforms
-
munkres
Kuhn-Munkres (aka Hungarian) algorithm for solving the Assignment Problem in O(n^3)
-
highs-sys
Rust binding for the HiGHS linear programming solver. See http://highs.dev.
-
rusted_list
A ever sorted list for rust that is operating on binary search
-
redc
Unsigned integer types which are constrained within a modular field using montgomery multiplication, never overflowing or exceeding the modulo
-
rtt
Rapidly-Exploring random trees path planning algorithm
-
griditer
Contains a couple of iterators for implementing 2D grid based algoritms
-
shyfyr
Simpliest possible text encryption algorithm that goes FYR
-
sfmt
SIMD-oriented Fast Mersenne Twister (SFMT)
-
rl-bandit
multi-armed bandit implementation
-
kdtree-ray
Fast Kdtree implementation for raytracer
-
moore-hilbert
A safe Rust binding to Doug Moore's Fast Hilbert Curve Generation, Sorting, and Range Queries
-
numext-constructor
Fixed-size uint and hash constructor
-
addchain
Generate addition chains
-
hotsax
based discord discovery algorithms
-
kdbush
A very fast static spatial index for 2D points based on a flat KD-tree
-
extsort-lily
An efficient external merge sort implementation
-
polysplit
Algorithm that allows to split polylines into segments by the defined list of points not necessary belonging to the polyline
-
str-distance
Distance metrics to evaluate distances between strings
-
influxdb2-structmap
Procedural macro library for converting between Rust structs and associative containers
-
cityhash-sys
Rust binding of Google CityHash algorithm
-
bufhash
Buffered hashing facilities
-
lcpc-brakedown-pc
polynomial commitment scheme from SDIG expander code
-
webgraph
port of the WebGraph framework (http://webgraph.di.unimi.it/)
-
nohash-hasher
std::hash::Hasher
which does not hash at all -
ackr
Storm acking algorithm in Rust
-
varisat-checker
Proof checker for proofs generate by the Varisat SAT solver
-
fsm-rust-jb
FSM (with effects, like Mealy machine) implementation in Rust
-
grue
Various tools and algorithms for building role-playing and adventure games
-
maglio
non stable package for 3d maths
-
quickbacktrack
back tracking with customizable search for moves
-
pack
Solver for packing puzzle
-
fastnoise-simd
A safe wrapper around the fastnoise-simd-bindings crate
-
gcm-lcm
Greatest convex minorant, least concave majorant
-
mesh-rand
methods of generating random points on the surface of 3d models
-
gurobi
An unofficial Rust API for Gurobi optimizer
-
crc24
CRC-24 implementation (IETF RFC2440-compatible)
-
candle-gemm-f64
Playground for matrix multiplication algorithms
-
knn
compute KNN
-
simple_graph_algorithms
goal of making running graph algorithms as easy as possible
-
async-convert
Async TryFrom/TryInto traits
-
randomizer
A random string/byte generator
-
sacabase
Base types and functions for suffix arrays and longest substring search
-
fuchsia-cprng
Fuchsia cryptographically secure pseudorandom number generator
-
minutae
Cellular Automata-esque simulation engine involving a 2D universe populated by cells and entities
-
or-tools-sys
Unofficial Rust wrappers to the C++ library Google OR-Tools, open source software for combinatorial optimization
-
toolbox-rs
A toolbox of basic data structures and algorithms
-
cbc-src
Redistribution of Coin-OR Cbc as a crate
-
rand_isaac
ISAAC random number generator
-
float_math
Does math on floating point values
-
candle-gemm-c32
Playground for matrix multiplication algorithms
-
lcs-diff
Compute differences between two slices using LCS algorithm
-
cellular_maps
generate 2D procedural bitmaps using the cellular automata technique
-
randge
Generate unique random numbers
-
fixed-sqrt
Square root for fixed-point numbers
-
ncollide2d-updated
2 and 3-dimensional collision detection library in Rust. Will be superseded by the parry2d crate.
-
l1-dfa
Deterministic Finite-State Automata Library for Rust, written in L1
-
asearch
Approximate pattern matching on Rust
-
stalin-binary-search
alike binary search but any checking element which is not target one is eliminated
-
sprs-rand
Random sparse matrix generation
-
kurobako_problems
A collection of black-box optimization problems
-
byond-crc32
Fast CRC-32/BYOND checksum computation
-
sonyflake
A distributed unique ID generator inspired by Twitter's Snowflake
-
csinsertion_sort
Insertion sort implementation for indexable collections
-
kupsy
Some data-structures and algorithms that might be useful
-
winterval
Interval adapter for both open/closed implementations of intervals ( ranges )
-
xxhash-c-sys
Bindings to xxhash
-
dynstore
A container for arbitrary castable objects
-
algograph
A (both directed and undirected) graph and their algorithms implemented in Rust
-
genesys-dice-roller
dice rolling library for genesys dice strings
-
pluum
very sweet
-
ncollide_testbed3d
3D testbed for ncollide
-
raftmodel
A logic model for the raft consensus algorithm
-
rs_sha512
rs_sha512
is a Rust implementation of the SHA-512 cryptographic hash algorithm, part of the largerrs_shield
project. This package provides SHA-512 hashing functionality in a standalone manner… -
rbi
A FIFO index queue that can be used for implementing a ring buffer
-
a-star_traitbased
Implemetaion of A* useful for stuct, based on train implementation
-
flo_sparse_array
Sparse array data type: a fast map between usize values and data
-
clock-zones
handling clock zones
-
geo-buffer
methods to buffer (to inflate or deflate) certain primitive geometric types in the GeoRust ecosystem via a straight skeleton
-
rs-uuid
Universally unique identifier generator
-
threed-ice
The package provides an interface to 3D-ICE
-
scicrypt-numbertheory
A scicrypt crate implementing number theoretic algorithms such as random (safe) prime generation
-
constfft
providing an FFT API for arrays
-
generic-str
Annoyed that Rust has two string types? Well it doesn't any more
-
n18catalogue
Defines common 18xx tiles
-
index-sort
Sort containers by index using user-specified swap and compare functions
-
boostvoronoi_core
Boost voronoi private workspace (this workspace will be re-integrated in the main crate in next release)
-
algo_no_std
Some algorithms library. ref: ISBN978-7741-9690-9
-
shash
An arbitrary-length-input hash function for competitive programming and experimental purposes
-
inexor-rgf-plugin-connector
Inexor - Reactive Graph Flow - Plugin - Connector
-
pruefung
Checksums in pure Rust, with no_std available, implementing the Hasher trait
-
strseq
A string sequence library for Rust
-
seximal
(base6) equivalent of Rust's type system
-
quadtree-f32
dependency-free ID-based quadtree
-
octree
algorithm for nearest neighbor search in 3D space
-
rust-selfsimilar
A fast generator of discrete self similar random numbers
-
szyk
generic topological sort
-
slur
A fast, iterative, correct approach to Stackblur, resulting in a very smooth and high-quality output, with no edge bleeding
-
heterogeneous_graphlets
computation of heterogeneous graphlets
-
iter-group
grouping (key,value) iterators into maps of collections
-
rustsat-kissat
Interface to the SAT solver kissat for the RustSAT library
-
iron-shapes-booleanop
Boolean operations on polygons for iron-shapes
-
log_buffer
A zero-allocation ring buffer for storing text logs
-
genomic
A small crate for implementing genetical algorithms
-
elara-math
Rust-native tensor and math library
-
checksum-tapestry
Collection of checksum algorithms and examples
-
downsample
keep downsampled history of data over long period of time
-
ordered-map
A HashMap, with the capability of accessing the keys and values in order
-
spatium
Spatium. Calc distance between sequences.
-
yn
Natural language processing library for yes or no values
-
coinipopt-sys
The low-level bindings to the COIN-OR Clp library
-
easy_rand
Small Rust wrapper library for calling POSIX's srand() and rand() functions
-
to_precision
Write out a float rounded to the given position
-
mona
Transform nested container types
-
simple-rnd
Tiny random number generation library
-
turk
A generic minimax algorithm that may be used as an AI player for 2-player games
-
algorithms-edu
Algorithms for pedagogical demonstration
-
concorde_rs
binding to Concorde TSP Solver
-
zkp-mmap-vec
Replacement for
Vec
that uses file-backed storage -
simple_nn
nueral network library
-
rummikub_solver
Solves a board of Rummikub game by attempting to fit every piece given into a valid game set
-
drunken-diver
Implements an algorithm inspired by the Drunken Bishop algorithm
-
wy
wyhash algorithms
-
broccoli-rayon
broadphase collision detection algorithms
-
drain_at_sorted_unchecked
Terribly unsafe but highly efficient function that allows removing items from a vector with few moves
-
randsort
A sorting library with an optimal complexity of O(n) (!!) by randomly sorting Vectors until they are sorted
-
dfp-number
Decimal floating point arithmetic for Rust based on bindings for Intel(R) Decimal Floating-Point Math Library v2.2
-
moving-least-squares-image
Image deformation using moving least squares
-
fxhash
A fast, non-secure, hashing algorithm derived from an internal hasher used in FireFox and Rustc
-
generalized_suffix_tree
Generalized Suffix Tree using Ukkonen's algorithm in Rust
-
enontekio
solve problems with data extraction and manipulation, like Advent of Code puzzles
-
rxqlite-common
A distributed sqlite database built upon
openraft
,sqlx
andsqlite
-
bft-core
An efficient and stable Rust library of BFT core for distributed system
-
goorm_edu_rs_kit
A code test library for easy variable of integer or vector of integer from standard input
-
squirrel3-rs
reliable random number generator
-
arroy
Annoy-inspired Approximate Nearest Neighbors in Rust, based on LMDB and optimized for memory usage
-
reservoir-sampling
Implementations of a variety of algorithms for reservoir sampling in Rust
-
scs-rs
Bindings to the SCS convex optimization solver
-
ed2k
hash function
-
muscleman
A buffer utility
-
rounded-div
Get rounded result of an integer division
-
xcc
Exact Cover solver with color extensions
-
fux_kdtree
K-dimensional tree implemented in Rust for fast NN querying
-
lsap
Solving linear sum assignment problem using JV algorithm as in Scipy
-
mersenne_twister
Mersenne Twister pseudorandom number generator
-
hamming-heap
Amortized constant time min heaps for binary features in nearest neighbor searches
-
clp-src
Redistribution of Coin-OR Clp as a crate
-
fifo-set
FIFO queue with unique elements
-
grid_search_cardinal_point_to_point
Search algorithm for finding the shortest path between two points in a uniform-cost cardinal grid
-
unifier_set
A generic unifier set (disjoint set, union-find) datastructure for use in unification algorithms
-
bcmp
bcmp offers fast binary data comparison algorithms to enumerate common substrings, unique substrings or determine a patch set
-
hmac-drbg
Pure Rust implementation of Hmac DRBG
-
elements-frequency
Finds the frequency of elements in a list
-
rbtree-defrag-buffer
Red-black tree based defragmentation buffer that maintains inserted and free intervals
-
midpoint_circle
midpoint circle algorithm
-
affine_transforms
(Pre Release Package) Does linear transformations in R3
-
recycle_vec
method for Vec to recycle it's backing allocation for use with another Vec of different type
-
iterator_item
a generator syntax experiment
-
imohash
Fast hashing for large files
-
blitz-path
Implementations of the A* and JPS pathfinding algorithms
-
hipparchus-metrics
A collection of distance metrics
-
solve-leetcode
Solutions to leetcode in rust
-
prandom
Some PNRG algorithms implemented in Rust
-
wfc_voxel
A Wave Function Collapse solver using preliminary voxel files
-
tiny_tco
A tiny dirt simple no_std tail call optimization library
-
maze_generator
different maze generation algorithms
-
identity-hash
std::hash::Hasher
which does not hash at all -
checksum
Calculates crc32/crc64 file checksums written in Rust
-
distance
A collection of approximate string matching algorithms
-
rblas
BLAS bindings and wrappers
-
itertree
Hobby project to experiment with tree traversal using iterators
-
rng-cli
A random data generator CLI tool. Prints an infinite stream of data generated from a selected PRNG algorithm to stdout. Basically a CLI frontend for the
rand
crate. -
czt
The package provides an algorithm to compute the chirp Z-transform
-
patmatch
A configurable pattern matching / wildcard matching library
-
caso
Category Theory Solver for Commutative Diagrams
-
librsb-sys
FFI interface for librsb
-
peekable-buffer
Buffer with a cursor
-
astar
A generic implementation of the A* pathfinding algorithm
-
random-trait
random trait meant to produce random generic types
-
compute-float
Computes floating point numbers using Eisel-Lemire algolithm
-
ord_by
Conveniently attach a custom compare function to any type
-
rand_krull
Krull64/65 random number generators
-
total-space
Explore the total space of states of communicating finite state machines
-
from_bytes_or_zeroed
Reads integers from an arbitrary slice of bytes
-
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…
-
closed01
checked floating point operations within the range [0,1]
-
alea
randomness
-
quicksort_gen
Generic implementation of quicksort algorithm
-
curuam
lot of useful functions and structs like Ipv4, Ipv6, Mac, random_in_range, memcpy, checksum, EthHeader, IpHeader, and etc
-
equation_generator
Generate random equations ! WIP
-
hash-match
Optimized pattern matching alternative
-
string-ring
A circular string buffer with character- and line-level granularity
-
sra
A collection of spaced repetition algorithms
-
m4ri-sys
Bindings to m4ri
-
openraft-rocksstore-compat07
A example v07 compatible implementation of the
openraft::RaftStorage
trait -
varisat-internal-proof
Internal proof format for the Varisat SAT solver
-
xoroshiro128
Fast psuedo-random number generators
-
string_utils5846
usefull string operations
-
transvoxel
Eric Lengyel's Transvoxel Algorithm
-
lax
LAPACK wrapper without ndarray
-
ciclo
Exhaustive cycle enumeration
-
reverse-lines
Rust Iterator for reading files line by line with a buffer in reverse
-
cut-optimizer-1d
A cut optimizer for cutting linear pieces
-
number_traits
number traits
-
dists
2d distribution generator
-
lapjv
Linear Assignmment Problem solve using Jonker-Volgenant algorithm
-
advancedresearch-error_predictive_learning
Black-box learning algorithm using error prediction levels
-
lisa
longest increasing subsequence algorithm [ O( nlogn ) ]
-
fast-float
Fast floating-point number parser
-
microstate
Finite state machine, inspired by micromachine
-
finite-state-machine
A type and trait based finite state machine macro
-
deterministic-finite-automaton
generic implementation of a deterministic finite automaton
-
scicrypt-bigint
A scicrypt crate implementing *mostly* constant-time bigints for modular integers
-
quad3
quadtree implementation in Rust
-
malwaredb-murmurhash3
MurmurHash3 implementation
-
jandom
Port of java.util.Random
-
graph-tools
Graph tools and algorithms written in Rust
-
npy-writer
Export numpy arrays in the npy or npz format
-
graph_solver
An undirected graph constraint solver for node and edge colors
-
n_best
Convenient collection to gather the N highest elements, and discard the others
-
alcs
All Longest Common Subsequences and String Fuzzy Search
-
ratio-genetic
Ratio's genetic algorithms library
-
snappy_framed
Read and Write implementations for streaming, framed Snappy compression format
-
ccl-fxhash
A 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.
-
polytope
Data structures and methods for constructing polytopes
-
process_tools
Collection of algorithms and structures to handle processes properly
-
py-fossil-delta
functions for calculating differences between strings and applying calculated deltas
-
asura
in Rust
-
small-sorted-map
Heap-stored map based on a sorted list
-
aristeia
An evolutionary computation library
-
championship
Generate championship fixtures using the round-robin tournament algorithm
-
radixal
Digits iteration for unsigned integer types
-
integer_scaling
IntegerScaling wrapper for those who prefer snake_case
-
geo-rand
Generate random geometric shapes
-
gen-iter
temporary util for creating iterators using generators
-
const-linear
linear algebra library based on const generics
-
eziter
Wrapper around Iterator
-
tlsh
Rust port of Trend Micro Locality Sensitive Hashing
-
heapp
Some heap operations on slice
-
robin_merge
merging vectors round-robin style
-
spelling
A spellchecker using the Levenshtein distance as the heuristic for distance
-
voronoi
compute Voronoi diagrams, using Fortune's sweepline algorithm
-
scour
A fuzzy search algorithm
-
generic-matrix-impl
generic matrices and their associated operations
-
copper
A constraint programming solver
-
biterate
API for Gurobi optimizer
-
fastcmp
A fast byte slice comparison library
-
index-fixed
convert slices into arrays using indexes ([T] -> [T;N])
-
pcg
A port of the PCG random number generation library
-
eytzinger-map
array/vec based map using eytzinger search algorithm
-
integer-hasher
std::hash::Hasher
which does not hash at all -
rure
A C API for Rust's regular expression library
-
chargrid_event_routine
Pseudo-synchronous composable event-based state machines for chargrid apps
-
numext-fixed-uint-core
A internal crate used by numext-fixed-uint
-
crcany
Compute any CRC
-
logicng-open-wbo-sys
LogicNG Bindings for OpenWBO
-
rs_sha512_256
rs_sha512_256
is a Rust implementation of the SHA-512/256 cryptographic hash algorithm, part of the largerrs_shield
project. This package provides SHA-512/256 hashing functionality in a standalone manner… -
bound-stl
attempts to implement lower_bound and upper_bound in C++ STL
-
revec
Convert a Vec<A> to a Vec<B> provided vec is empty
-
geohash-tools
A collection of functions to manipulate GeoHashes
-
m4ri-rust
M4RI-based boolean linear algebra
-
minecraft_nether_generation
The minecraft nether generation implemented in rust
-
fastfloat
Fast-math wrapper and convenient numeric functions for approximate floating point operations in Rust
-
nefsm
state machine library for Rust
-
cloth_bumpmap
Creates a bump map used in the clothify algorithm in GIMP (GNU Image Manipulation Program)
-
aid
Rust port of the id generation algorithm use in Misskey
-
fxsm
A state machine procedural macro for enums
-
byte-num
converting numbers to bytes, and bytes to numbers in base 10!
-
crc32c-hw
Hardware-accelerated (SSE 4.2) implementation of CRC32C with software fallback
-
debug_sat
A debuggable automatic theorem prover for boolean satisfiability problems (SAT)
-
spatial-neighbors
certain Spatial-Partitioning Algorithms | DataStructures
-
hash_map_diff
Comparing changes between two HashMaps
-
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
-
rand-wyrand
The extremely fast WyRand PRNG for the rand ecosystem of crates
-
iffi
Make assertions about values used over FFI
-
noise_rs
The perlin and simplex noise implementation in 2d and 3d
-
wordfeud-solver
evaluate all possible moves given a wordfeud board and rack
-
lsh-rs
LSH: Approximate Nearest Neighbor Search with Locality Sensitive Hashing
-
istos
graphs
-
piston-history_tree
A persistent history tree for undo/redo
-
pdqsort
Pattern-defeating quicksort
-
graph_reduce
Simplify and sort directed acyclic graphs, and their associated matrices
-
needle
Fast search functions for finding things in Strings, Arrays and iterators
-
bufferpool
A vector of vectors backed by one contiguous vector - allows mutable borrows of non-overlapping regions
-
max-subarray-sum
Finds the maximum subarray sum in a list
-
sparse_graph
Sparse graph algorithms
-
stdtr
minimal Rust bindings for the
stdtr
andinc_beta
functions from the Cephes math library -
dynforest
dynamic forest management
-
hexagon-map
Coordinate transformation and pathfinding for hexagonal maps
-
weighted_levenshtein
Generic implementation of Levenshtein distance allowing arbitrary weighting of operations
-
sortrs
An introspective sort implementation
-
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.
-
grid_search_cardinal_common
Reusable components for use implementing uniform-cost cardinal grid-searching algorithms
-
wyhash2
in rust
-
buf_redux
Drop-in replacements for buffered I/O in
std::io
with extra features -
voxel_chunk
A voxel object module which allows you to have private Chunk objects with methods to modify their data
-
assessment
that allows different types of assessments, to convert between them and to perform basic operations
-
probs
Statistics toolkit
-
monster
Collection of random utilities
-
kagemeka
Kagemeka's Rust Package
-
quadtree-cd
A quadtree-based data structure for placing shapes such as rotated rectangles in bounded 2D space, checking for collision with already placed items
-
topcodes
A scanner for detecting TopCodes in an image buffer
-
math_adapter
Collection of math adapters to decouple your application from math libraries' implementations and to provide both inter-libraries compatibility and affordable exchangeability
-
rustsat-glucose
Interface to the SAT solver Glucose for the RustSAT library
-
co_sort
Sort arrays given a permutation
-
linear_solver
A linear solver designed to be easy to use with Rust enum expressions
-
guts
Traits for constructing/destructuring from/into a type's internal guts
-
optimum
Future Framework to solve optimization problems
-
isize-vec
isize sorted vector
-
fst-bin
command line tool for using finite state transducers to compactly represents sets or maps of many strings (> 1 billion is possible). The command line tool exposes functionality to search FSTs using regular expressions…
-
onemax-oxigen
OneMax simple problem resolution using oxigen
-
ruststft
computes the short-time fourier transform on streaming data
-
batbox-lapp
Linear algebra (batbox-la) extensions
-
taxicab-map
Coordinate transformation and pathfinding for Taxicab Geometry
-
exotic-iter
My personal collection of special-case iterator methods
-
n18map
Manages the state of 18xx maps
-
misfortunate
Perverse implementations of safe Rust traits
-
priority_container
Datastructure to find n biggest/smallest items within a large set
-
geo-offset
Add margin and padding to geometric shapes
-
schindel
rust min-shingle hashing
-
rusted_pipe
Real time processing library for developing multithreaded ML pipelines, written in Rust
-
usize_conversions
Conversion traits for conversions between
usize
and fixed sized integers -
line_dist
The distance formula is used to calculate distance between two points in Rectangular Co-ordinate System
-
smart_buffer
A hybrid stack/heap buffer
-
stackbt_automata_impl
Automata implementations for StackBT
-
aigraph1
Graph serching algorithms
-
force_graph
Force-directed graph algorithm
-
vlfeat-sys
FFI bindings to vlfeat library
-
algen
A parallelized genetic algorithm runner
-
pef
Partioned Elias-Fano encoding for sorted integers
-
nostbeep
A no_std implementation of a binary heap. Binary Heap is implemented as a max heap.
-
clipper-sys
Boolean operations on polygons (Clipper wrapper)
-
safe-modular-arithmetic
modular arithmetic algorithms for all integer types in an overflow-safe and const-compatible manner
-
froggy-rand
Random number generation without state for games
-
xxhash-c
Safe wrapper to xxhash
-
py_pathfinding
A* and Jump-Point-Search algorithms using ndarray which makes them easy to use via pyo3 in Python
-
varisat-dimacs
DIMCAS CNF parser and writer for the Varisat SAT solver
-
osqp-sys
FFI bindings to the OSQP (Operator Splitting Quadratic Program) solver
-
deviz
access to a VS Code extension for displaying structured program output
-
highhash
High-speed hashing algorithms for Rust
-
quickmaths
A collection of algorithims for generic mathematics
-
rbf
Super simple const generics based ring buffer implementation for no_std
-
intern-str
Efficient, compile-time string interning for Rust
-
candle-gemm-c64
Playground for matrix multiplication algorithms
-
libpermute
A
no_std
compatible library that provides a function to permute the items of a slice -
clippy-utilities
funtions for clippy fixing
-
phos
regex-like pattern matcher/permutation generator
-
libraft
raft implementation in rust
-
random_tester
similar to https://www.fourmilab.ch/random/
-
rs-kdbush
A very fast static spatial index for 2D points based on a flat KD-tree
-
rscompress-approximation
data approximations supporting rscompress
-
genetic-algorithm-fn
Using genetic algorithms to maximize functions
-
optimus
ID hashing and Obfuscation using Knuth's Algorithm
-
ordslice
Extensions for ordered slices
-
dary
double-array construction and search functions
-
generic-octree
generic implementation of a linear Octree
-
advancedresearch-max_tree
maximizer library based on a maximum tree structure
-
integer-cbrt
integer cube root algorithm for primitive rust types
-
lcpc-test-fields
fields for testing polycommits
-
c3-linearization
C3 linearization
-
slicetools
Add extra iterators to slices
-
bit-cursor
Buffer cursor that supports bit-level operations
-
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…
-
siphash
A fast implementation of the SipHash hashing algorithm with no dependency on libstd
-
quickphf
Runtime code for static data structures based on the PTHash perfect hash function
-
quickxorhash
Fast implementation of QuickXorHash in Rust
-
checked_int_cast
Conversions between primitive integers with overflow and underflow checking
-
octopus_query
query engine for arrays of integers (scoring only idf at the moment), supports AND/OR/DisMax/Constant queries
-
dextrose
a random collection of helper traits, as a sweet treat for Rust programmers
-
kdtree-rust
KDTree
-
modulo
operation
-
scorpius
data structures and algorithms library
-
tile-buffer
Tiling Buffer useful when dealing with range requests
-
cutter
usefull functions for parsing text. Used for cutting between strings.
-
kmpsearch
String/Byte pattern searching within byte slices or strings, using the Knuth Morris Pratt algorithm
-
ordered_vec
A trait that ensures that elements in a vector are pushed in a sorted order (both ascending and descending)
-
cuckoo
search algorithm
-
xias
Explicit numeric type conversions
-
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!
-
moving-least-squares
Image deformation using moving least squares
-
kdvtree
K-dimensional tree space-partitioning data structure
-
flxy
Full-text searching and scoring of strings
-
limited_direction
Find path to any direction and distance but with limited directions
-
pushy
A pushable stack-allocated buffer
-
md6
hash function for Rust via FFI
-
sqnc
Traits and adaptors for sequences
-
building_blocks_storage
Efficient storage for maps on sparse or dense, 2D and 3D integer lattices
-
bitap-reference
Reference functions for the bitap crate
-
AitSar
implementations of algorithms faster then Binary Search
-
proper_path_tools
Collection of algorithms and structures to handle paths properly
-
reachability_solver
A linear reachability solver for directional edges
-
int_cmp
Small library for comparing unsigned integers with signed integers
-
membuf
A safe-ish wrapper for allocating and reallocating heap buffers
-
koek-redact
Allows for redaction of values when outputting them to places where sensitive data is not permitted
-
mop-blocks
Foundation blocks for MOP
-
kitty_pool
A safe buffer pool
-
miura
Math library written for learning Rust
-
fletcher-simd
A SIMD implementation of the Fletcher's checksum algorithm
-
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. -
iter_vec
vector of iterator but specialized for std::slice::Iter
-
compact_bitset
A type for storing fixed-size arrays of booleans densely to optimize space
-
packed-vec
Sorted, deduped, compressed vector of integers
-
generic-floyd-warshall
A generic implementation of the Floyd-Warshall algorithm for array-like types
-
coloring
Convert values to color simply and securely
-
genetic_optimization
solving optimzation problems with a genetic algorithm
-
curveipo
2D curve interpolation
-
pcg_with_xorshift
a tiny random number generator
-
squares-rng
Squares RNG for game development
-
ceetle
A Computional Tree Logic (CTL) Verifier
-
plumtree
algorithm
-
fasthash
A suite of non-cryptographic hash functions for Rust
-
grid_search_cardinal_best
Search algorithm for finding the shortest path to the best cell in a uniform-cost cardinal grid
-
xxh3
XXH3 hash function
-
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
-
web-glitz-buffer-vec
Implements growing WebGlitz memory buffers for slices of data
-
perlin2d
Lightning fast 2D Perlin Noise generator
-
sacapart
Partitioned suffix arrays, for use with
sacabase
-
gt-ltq
solve path graph theory problems on an ltq
-
fsmentry-core
Finite State Machines with an entry API and data storage
-
str_stack
string allocator for allocating many write-once strings. This library is primarily useful for parsing where you need to repeatedly build many strings, use them, and then throw them away…
-
csselection_sort
Selection sort implementation for indexable collections
-
sparsemat
sparse matrix library
-
mop-structs
Low-level structures for MOP
-
pocket_prover-set
A base logical system for PocketProver to reason about set properties
-
numext-fixed-hash-core
A internal crate used by numext-fixed-hash
-
epilog
A collection of Prolog-like tools for inference logic
-
icub3d_sudoku_solver
A sudoku solver
-
smallint
optimized arbitrary precision integers
-
rustlex_fsa
manipulating (deterministic) finite automata
-
letterboxed
A solver for the New York Times Letter Boxed puzzle - https://www.nytimes.com/puzzles/letter-boxed