minimizer-queue
Fast computation of minimizers using a monotone queue.
Features
- insertion in amortized constant time
- lookup in constant time
- keeps track of the relative position of the minimizers
- supports custom hasher, using wyhash by default
- can be seeded to produce a different ordering
- optimized modulo computation with strength_reduce
Example usage
use MinimizerQueue;
let mut queue = new; // width 3
queue.insert;
queue.insert;
queue.insert;
queue.get_min; // element with the smallest hash among 1, 2 and 3
queue.insert;
queue.get_min; // element with the smallest hash among 2, 3 and 4