Struct umgap::rmq::lca::LCACalculator
source · pub struct LCACalculator {
pub first_occurences: HashMap<TaxonId, usize>,
pub euler_tour: Vec<TaxonId>,
pub rmq_info: RMQ<usize>,
}
Expand description
Struct capable of calculating the LCA of 2 nodes in a TaxonTree, using RMQ.
Fields§
§first_occurences: HashMap<TaxonId, usize>
Keeps track in which step of the euler tour a given taxon is encountered for the first time.
euler_tour: Vec<TaxonId>
Contains the taxons in the order of an Eulerian tour.
rmq_info: RMQ<usize>
The RMQ to which the LCA corresponds.
Implementations§
Trait Implementations§
source§impl Aggregator for LCACalculator
impl Aggregator for LCACalculator
impl MultiThreadSafeAggregator for LCACalculator
Auto Trait Implementations§
impl RefUnwindSafe for LCACalculator
impl Send for LCACalculator
impl Sync for LCACalculator
impl Unpin for LCACalculator
impl UnwindSafe for LCACalculator
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more