SDSL: Succinct Data Structure Library
A C++ template library for succinct data structures
 All Classes Namespaces Files Functions Variables Typedefs Friends
Public Types | Public Member Functions | Public Attributes
sdsl::rmq_succinct_sada< Minimum, Bp_support, Rank_support10, Select_support10 > Class Template Reference

A class to support range minimum or range maximum queries on a random access container. More...

#include <rmq_succinct_sada.hpp>

List of all members.

Public Types

typedef bit_vector::size_type size_type
typedef bit_vector::size_type value_type
typedef Bp_support bp_support_type
typedef Rank_support10 rank_support10_type
typedef Select_support10 select_support10_type

Public Member Functions

 rmq_succinct_sada ()
 Default Constructor.
template<class RandomAccessContainer >
 rmq_succinct_sada (const RandomAccessContainer *v=NULL)
 Constructor.
 rmq_succinct_sada (const rmq_succinct_sada &rm)
 Copy constructor.
 ~rmq_succinct_sada ()
 Destructor.
rmq_succinct_sadaoperator= (const rmq_succinct_sada &rm)
void swap (const rmq_succinct_sada &rm)
 Swap operator.
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)

Public Attributes

const bit_vectorect_bp
const Bp_support & ect_bp_support
const Rank_support10 & ect_bp_rank10
const Select_support10 & ect_bp_select10

Detailed Description

template<bool Minimum, class Bp_support, class Rank_support10, class Select_support10>
class sdsl::rmq_succinct_sada< Minimum, Bp_support, Rank_support10, Select_support10 >

A class to support range minimum or range maximum queries on a random access container.

This class takes five template parameters:


Member Function Documentation

template<bool Minimum, class Bp_support , class Rank_support10 , class Select_support10 >
size_type sdsl::rmq_succinct_sada< Minimum, Bp_support, Rank_support10, Select_support10 >::operator() ( const size_type  l,
const size_type  r 
) const [inline]

Range minimum/maximum query for the supported random access container v.

Parameters:
lLeftmost position of the interval $[\ell..r]$.
rRightmost position of the interval $[\ell..r]$.
Returns:
The minimal index i with $\ell \leq i \leq r$ for which $ v[i] $ is minimal/maximal.
Precondition:
  • r < size()
  • $ \ell \leq r $
Time complexity
$ \Order{1} $

The documentation for this class was generated from the following file: