resq-dsa 0.1.0

Production-grade data structures and algorithms — zero external dependencies
Documentation
  • Coverage
  • 100%
    36 out of 36 items documented14 out of 31 items with examples
  • Size
  • Source code size: 41.16 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 3.14 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 18s Average build duration of successful builds.
  • all releases: 22s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • resq-software/crates
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • resq-sw

Production-grade data structures and algorithms — zero external dependencies.

A collection of space-efficient probabilistic data structures and graph algorithms for general-purpose use.

Modules

  • [bloom] - Bloom filter for approximate set membership
  • [count_min] - Count-Min sketch for frequency estimation
  • [graph] - Graph algorithms (BFS, Dijkstra, A*)
  • [heap] - Bounded heap for K-nearest neighbor tracking
  • [trie] - Trie prefix tree and Rabin-Karp string matching

Usage

use resq_dsa::bloom::BloomFilter;
use resq_dsa::count_min::CountMinSketch;
use resq_dsa::graph::Graph;

// Bloom filter for deduplication
let mut bf = BloomFilter::new(1000, 0.01);
bf.add("drone-001");
assert!(bf.has("drone-001"));

// Count-Min for frequency tracking
let mut cms = CountMinSketch::new(0.01, 0.01);
cms.increment("sensor-reading", 5);

// Graph for pathfinding
let mut g = Graph::<&str>::new();
g.add_edge("base", "waypoint-1", 100);
g.add_edge("waypoint-1", "target", 50);
let (path, cost) = g.dijkstra(&"base", &"target").unwrap();
assert_eq!(path, vec!["base", "waypoint-1", "target"]);