pub struct LazySegTree<Spec: LazySegTreeSpec> { /* private fields */ }Implementations§
Source§impl<Spec: LazySegTreeSpec> LazySegTree<Spec>
impl<Spec: LazySegTreeSpec> LazySegTree<Spec>
Sourcepub fn from_slice(values: &[Spec::T]) -> Self
pub fn from_slice(values: &[Spec::T]) -> Self
Sourcepub fn query<R: RangeBounds<usize>>(&self, range: R) -> Spec::T
pub fn query<R: RangeBounds<usize>>(&self, range: R) -> Spec::T
Sourcepub fn update<R: RangeBounds<usize>>(&mut self, range: R, value: Spec::U)
pub fn update<R: RangeBounds<usize>>(&mut self, range: R, value: Spec::U)
Applies an update to all elements in the given range.
§Example
use array_range_query::helpers::LazySegTreeAddMax;
let mut tree = LazySegTreeAddMax::<i32>::from_vec(vec![1, 2, 3, 4, 5]);
tree.update(1..=3, 10);
assert_eq!(tree.query(..), 14);§Time Complexity
O(log n)
§Panics
Panics if the range is invalid or out of bounds.
Trait Implementations§
Source§impl<Spec: Clone + LazySegTreeSpec> Clone for LazySegTree<Spec>
impl<Spec: Clone + LazySegTreeSpec> Clone for LazySegTree<Spec>
Source§fn clone(&self) -> LazySegTree<Spec>
fn clone(&self) -> LazySegTree<Spec>
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<Spec: Debug + LazySegTreeSpec> Debug for LazySegTree<Spec>
impl<Spec: Debug + LazySegTreeSpec> Debug for LazySegTree<Spec>
Auto Trait Implementations§
impl<Spec> !Freeze for LazySegTree<Spec>
impl<Spec> !RefUnwindSafe for LazySegTree<Spec>
impl<Spec> Send for LazySegTree<Spec>
impl<Spec> !Sync for LazySegTree<Spec>
impl<Spec> Unpin for LazySegTree<Spec>where
Spec: Unpin,
impl<Spec> UnwindSafe for LazySegTree<Spec>where
Spec: UnwindSafe,
<Spec as LazySegTreeSpec>::T: UnwindSafe,
<Spec as LazySegTreeSpec>::U: UnwindSafe,
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