|
| std::size_t | size () const |
| | Number of indexed values.
|
| |
| bool | empty () const |
| | Whether the indexed array is empty.
|
| |
| std::size_t | arg_min (std::size_t left, std::size_t right) const |
| | Return the first minimum position in [left, right).
|
| |
| Value | range_min (std::size_t left, std::size_t right) const |
| | Return the minimum value in [left, right).
|
| |
| std::size_t | memory_usage_bytes () const |
| | Return owned auxiliary memory usage in bytes when implemented.
|
| |
template<class Impl, class Value>
class pixie::rmq::RmqBase< Impl, Value >
CRTP facade for static range-minimum-query indexes.
Implementations are non-owning indexes over an external random-access array. Queries use half-open zero-based ranges [left, right) and return the first position attaining the minimum. Invalid or empty ranges return npos.
- See also
<pixie/rmq/implementations.h> for the complete implementation catalog and current benchmark comparison.
template<class Impl, class Value>
Return owned auxiliary memory usage in bytes when implemented.
Implementations opt in by exposing memory_usage_bytes_impl() const. The reported value should include the index object itself and heap buffers owned by the index, but not the external value array indexed by the RMQ.