graaf

Crates.iograaf
lib.rsgraaf
version0.111.0
created_at2024-03-30 15:06:09.080279+00
updated_at2025-03-24 19:13:21.427619+00
descriptionWork with directed graphs.
homepage
repositoryhttps://github.com/bsdrks/graaf
max_upload_size
id1191151
size1,430,078
Bas Dirks (bsdrks)

documentation

https://docs.rs/graaf

README

Graaf   Crates.io Build status API reference Coverage Status

Rust-powered directed graphs.

Table of Contents

Installation

Add this to your Cargo.toml:

[dependencies]
graaf = "0.111.0"

Representations

Arc-Weighted Sparse Digraphs

Unweighted Dense Digraphs

Unweighted Sparse Digraphs

Generators

Operations

Algorithms

Bellman-Ford-Moore

  • BellmanFordMoore::distances finds the shortest distances from a source vertex to all other vertices in an arc-weighted digraph with negative weights.

Breadth-First Search

A breadth-first search explores an unweighted digraph's vertices in order of their distance from a source.

Depth-First Search

A depth-first search explores an unweighted digraph's vertices in order of their depth from a source.

  • Dfs iterates the vertices.
  • DfsDist iterates the vertices and their distance from the source.
  • DfsPred iterates the vertices and their predecessors.
  • DfsPred::predecessors finds the predecessors.

Dijkstra

Dijkstra's algorithm finds the shortest paths in an arc-weighted digraph.

Distance Matrix

A DistanceMatrix contains the shortest distances between all vertex pairs in a digraph.

Floyd-Warshall

Johnson's Circuit-Finding Algorithm

Predecessor Tree

A PredecessorTree contains the vertex predecessors.

Tarjan

Changelog

See CHANGELOG.md for a list of changes.

License

Licensed under Apache License, Version 2.0 or MIT license at your option.

Contact

Feel free to reach out with questions or suggestions.

Links

Commit count: 733

cargo fmt