awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
EbTech avatar

EbTech/rust-algorithms

0
View on GitHub↗
3,972 stars·234 forks·Rust·MIT·20 views

Rust Algorithms

This is a collection of standard data structures and algorithmic implementations written in Rust. It provides a suite of specialized libraries designed for competitive programming and systems engineering.

The project is organized into distinct toolkits for graph theory, number theory, range queries, and string processing. It includes implementations for computing shortest paths and network flows, performing primality tests and modular arithmetic, and managing associative range queries.

The library covers broad computational areas including signal processing via fast Fourier transforms, text analysis using suffix arrays and tries, and data organization through coordinate compression and sorting utilities. It also provides tools for parsing input data from files or standard I/O.

Features

  • Competitive Programming Toolkits - Provides a comprehensive toolkit of efficient data structures and algorithms tailored for competitive programming in Rust.
  • Competitive Programming Libraries - Provides a specialized suite of standard data structures and algorithms in Rust for competitive programming and systems engineering.
  • Graph Libraries - Provides a comprehensive library of graph algorithms including shortest paths and network flow implemented in Rust.
  • Adjacency Lists - Implements adjacency lists for efficient graph representation and traversal of sparse network structures.
  • Network Flow Algorithms - Provides algorithms for calculating maximum flow and minimum cuts in directed graphs.
  • Minimum Spanning Tree Algorithms - Implements both shortest path and minimum spanning tree algorithms for graph analysis.
  • Graph Algorithm Routines - Implements reusable routines for shortest paths, minimum spanning trees, and maximum flow for competitive programming.
  • Lazy Propagation - Provides segment trees with lazy propagation for efficient deferred range updates and queries.
  • Binary Indexed Trees - Provides binary indexed trees (Fenwick trees) for fast range sum queries and element updates.
  • Number Theory Algorithms - Implements computational number theory algorithms such as GCD, modular inverses, and primality testing.
  • Complex and Modular Arithmetic - Provides a utility for high-precision calculations involving rational, complex, and modular arithmetic.
  • Modular Arithmetic Classes - Provides modular arithmetic wrappers to handle calculations within a fixed prime modulus.
  • Primality Testing - Provides primality tests and greatest common divisor calculations for integer arithmetic.
  • Range Queries - Implements associative range queries using segment trees and binary indexed trees.
  • Range Update Queries - Provides efficient range update and query capabilities using binary indexed trees and segment trees with lazy propagation.
  • Disjoint Set Union - Provides a disjoint-set union (union-find) implementation with path compression for connectivity tracking.
  • String Matching Algorithms - Provides implementations for tries, suffix arrays, and pattern matching to analyze text sequences.
  • String Processing Algorithms - Implements advanced string processing algorithms including suffix arrays and tries for text analysis.
  • String Matching Tries - Implements trie-based structures for fast prefix lookups and string retrieval.
  • Coordinate Compression - Implements coordinate compression to reduce memory usage when sorting large sparse value ranges.
  • Fourier Transform Implementations - Implements fast Fourier transforms and convolutions for frequency domain analysis and polynomial multiplication.
  • Fourier Transforms - Implements fast Fourier transforms for converting signals between time and frequency domains.
  • Sorting and Searching Implementations - Provides a collection of classic sorting and searching implementations including binary search and merge sort.
  • Rust in practice - Listed in the “Rust in practice” section of the Rust Learning awesome list.

Star history

Star history chart for ebtech/rust-algorithmsStar history chart for ebtech/rust-algorithms

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Rust Algorithms

These projects share indexed features with Rust Algorithms. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • coells/100dayscoells avatar

    coells/100days

    7,488View on GitHub↗

    This project is a comprehensive collection of computer science implementations and an algorithm tutorial repository. It serves as a study guide and reference for competitive programming, providing executable code examples that demonstrate fundamental algorithmic problem solving and mathematical computation. The library covers a wide range of specialized domains, including cryptography and security primitives, lossless data compression techniques, and computational geometry for spatial analysis. It also features implementations of machine learning models, linear algebra operations, and formal

    Jupyter Notebook
    View on GitHub↗7,488
  • wisdompeak/leetcodewisdompeak avatar

    wisdompeak/LeetCode

    6,186View on GitHub↗

    This project is a curated library of algorithm implementations and solved programming problems. It serves as a reference repository for competitive programming and data structure implementations, providing optimized solutions for a wide range of coding challenges. The collection organizes code examples by algorithmic technique, specifically focusing on the implementation of trees, graphs, and heaps to optimize time and space complexity. It provides language-specific solutions used for high-performance coding tasks. The repository covers a broad set of capabilities, including graph traversals

    C++
    View on GitHub↗6,186
  • petgraph/petgraphpetgraph avatar

    petgraph/petgraph

    3,938View on GitHub↗

    petgraph is a graph data structure library for the Rust programming language. It provides a collection of tools for representing and manipulating graphs, functioning as a network analysis tool and a comprehensive graph algorithm suite. The library integrates with Graphviz DOT for importing, exporting, and parsing graph data to facilitate visualization. It distinguishes itself by offering specialized network analysis capabilities, such as the detection of cliques, bridge edges, articulation points, and subgraph isomorphisms. Its computational surface covers a wide range of algorithms, includi

    Rustgraph-algorithmsrust
    View on GitHub↗3,938
  • kevin-wayne/algs4kevin-wayne avatar

    kevin-wayne/algs4

    7,519View on GitHub↗

    algs4 is a Java data structures library and algorithm reference collection designed as the source code for a standard computer science textbook curriculum. It provides a comprehensive suite of fundamental implementations for sorting, searching, and core data organization. The project serves as a graph theory framework, offering tools for representing directed and undirected graphs and performing complex traversals and pathfinding. It also includes a broad sorting algorithm suite and a specialized library of Java data structures, including stacks, queues, priority queues, and symbol tables. I

    Java
    View on GitHub↗7,519
Compare all 30 related projects→

Frequently asked questions

What does ebtech/rust-algorithms do?

This is a collection of standard data structures and algorithmic implementations written in Rust. It provides a suite of specialized libraries designed for competitive programming and systems engineering.

What are the main features of ebtech/rust-algorithms?

The main features of ebtech/rust-algorithms are: Competitive Programming Toolkits, Competitive Programming Libraries, Graph Libraries, Adjacency Lists, Network Flow Algorithms, Minimum Spanning Tree Algorithms, Graph Algorithm Routines, Lazy Propagation.

Which projects share features with ebtech/rust-algorithms?

Projects with overlapping indexed features include: coells/100days — This project is a comprehensive collection of computer science implementations and an algorithm tutorial repository.… wisdompeak/leetcode — This project is a curated library of algorithm implementations and solved programming problems. It serves as a… petgraph/petgraph — petgraph is a graph data structure library for the Rust programming language. It provides a collection of tools for… kevin-wayne/algs4 — algs4 is a Java data structures library and algorithm reference collection designed as the source code for a standard… xtaci/algorithms — This is a collection of classical algorithms and data structures implemented as a header-only C++ library. It provides… oi-wiki/oi-wiki — This project is a comprehensive, community-maintained knowledge base and toolkit designed for competitive programming.…

Curated searches featuring Rust Algorithms

Hand-picked collections where Rust Algorithms appears.
  • Data Structures and Algorithms