pub enum Complexity {
Constant,
Logarithmic,
Linear,
Linearithmic,
Quadratic,
Cubic,
}Expand description
Complexity class for algorithm analysis
Variants§
Constant
O(1) - Constant time
Logarithmic
O(log n) - Logarithmic (our target)
Linear
O(n) - Linear
Linearithmic
O(n log n) - Linearithmic
Quadratic
O(n²) - Quadratic
Cubic
O(n³) - Cubic (traditional matrix operations)
Implementations§
Source§impl Complexity
impl Complexity
Sourcepub fn estimate_time_ns(&self, n: usize) -> u64
pub fn estimate_time_ns(&self, n: usize) -> u64
Estimate time for given input size (nanoseconds)
Trait Implementations§
Source§impl Clone for Complexity
impl Clone for Complexity
Source§fn clone(&self) -> Complexity
fn clone(&self) -> Complexity
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for Complexity
impl Debug for Complexity
Source§impl PartialEq for Complexity
impl PartialEq for Complexity
impl Copy for Complexity
impl Eq for Complexity
impl StructuralPartialEq for Complexity
Auto Trait Implementations§
impl Freeze for Complexity
impl RefUnwindSafe for Complexity
impl Send for Complexity
impl Sync for Complexity
impl Unpin for Complexity
impl UnwindSafe for Complexity
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§unsafe fn to_subset_unchecked(&self) -> SS
unsafe fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.