Template Class WordRangeMinimum

Nested Relationships

Nested Types

Class Documentation

template<class T, class Compare = std::less<T>>
class WordRangeMinimum

the leftmost minima of the ranges of an array, by the order less()

Public Types

using value_type = T
using size_type = std::size_t
using difference_type = std::ptrdiff_t
using const_reference = const T&
using reference = const_reference
using const_iterator = typename std::vector<T>::const_iterator
using iterator = const_iterator

Public Functions

WordRangeMinimum(void) = default
explicit WordRangeMinimum(std::vector<T> A, Compare less = {})

the structure on A

Pre:

A.size() < 2^32

std::size_t query(std::size_t i, std::size_t j) const

the place of the leftmost minimum of A[ i .

. j ]

Pre:

i <= j < size()

inline std::size_t size(void) const
const T &operator[](std::size_t i) const
inline const_iterator begin(void) const
inline const_iterator end(void) const
inline const_iterator cbegin(void) const
inline const_iterator cend(void) const