pub struct Elements<'list> {
pub list: &'list [i32],
pub len: usize,
pub max_sum: Option<i32>,
}
Fields§
§list: &'list [i32]
§len: usize
§max_sum: Option<i32>
Implementations§
Source§impl<'list> Elements<'list>
impl<'list> Elements<'list>
Sourcepub fn find_max_sum(&mut self) -> &Self
pub fn find_max_sum(&mut self) -> &Self
This method finds the max subarray sum. If there are multiple subarrays with equal sum it selects the subarray that came first.
Sourcepub fn result(&self) -> i32
pub fn result(&self) -> i32
This method returns the max subarray sum. We need to chain
this method with find_max_sum
.
§Examples
use max_subarray_sum::interface::Elements;
let mut list = vec![-2, -3, 4, -1, -2, 1, 5, -3];
let mut elements = Elements::new(&mut list);
let max_sum = elements.find_max_sum().result();
assert_eq!(7, max_sum);
Auto Trait Implementations§
impl<'list> Freeze for Elements<'list>
impl<'list> RefUnwindSafe for Elements<'list>
impl<'list> Send for Elements<'list>
impl<'list> Sync for Elements<'list>
impl<'list> Unpin for Elements<'list>
impl<'list> UnwindSafe for Elements<'list>
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