|
SDSL: Succinct Data Structure Library
A C++ template library for succinct data structures
|
A class to support range minimum or range maximum queries on a random access container. More...
#include <rmq_support_sparse_table.hpp>
Public Types | |
|
typedef RandomAccessContainer::size_type | size_type |
|
typedef RandomAccessContainer::size_type | value_type |
Public Member Functions | |
| rmq_support_sparse_table (const RandomAccessContainer *v=NULL) | |
| rmq_support_sparse_table (const rmq_support_sparse_table &rm) | |
| Copy constructor. | |
| rmq_support_sparse_table & | operator= (const rmq_support_sparse_table &rm) |
| void | swap (rmq_support_sparse_table &rm) |
| void | set_vector (const RandomAccessContainer *v) |
| size_type | operator() (const size_type l, const size_type r) const |
| Range minimum/maximum query for the supported random access container v. | |
| size_type | size () const |
| size_type | serialize (std::ostream &out, structure_tree_node *v=NULL, std::string name="") const |
| void | load (std::istream &in, const RandomAccessContainer *v) |
A class to support range minimum or range maximum queries on a random access container.
This class takes two template parameters. The first on is the type of random access container, for which the range minimum/maximum support should be build. The second one specifies whether the data structure should answer range minimum queries (Minimum=true) or range maximum queries (Maximum=false).
for the range minimum/maximum queries.
bits for the data structure (
). We used bit compression to get a good result in practice. | size_type sdsl::rmq_support_sparse_table< RandomAccessContainer, Minimum >::operator() | ( | const size_type | l, |
| const size_type | r | ||
| ) | const [inline] |
Range minimum/maximum query for the supported random access container v.
| l | Leftmost position of the interval . |
| r | Rightmost position of the interval . |
for which
is minimal/maximal.
1.8.0