Add fibonacci_heap implementation

This commit is contained in:
hal8174 2024-02-24 17:11:37 +01:00
parent 6cbb389ee7
commit d2c1e6d422
6 changed files with 303 additions and 187 deletions

View file

@ -100,6 +100,8 @@ where
#[cfg(test)]
mod tests {
use super::fibonacci_heap::FibonacciHeap;
use super::BinaryHeap;
use super::PriorityQueue;
macro_rules! test_generics {
@ -124,12 +126,14 @@ mod tests {
#[test]
fn $fun() {
super::$fun::<super::super::$gen<usize>>();
super::super::$fun::<super::super::$gen<usize>>();
}
}
}
test_generics!(basic_generic decrease_key_generic; BinaryHeap);
mod test_macro {
test_generics!(basic_generic decrease_key_generic; BinaryHeap FibonacciHeap);
}
fn basic_generic<T: PriorityQueue<usize>>() {
let mut q = T::new();