|
SDSL: Succinct Data Structure Library
A C++ template library for succinct data structures
|
A struct for the representation of an lcp-interval
.
More...
#include <cst_sct.hpp>
Public Member Functions | |
| lcp_interval (Int l=0, Int left=0, Int right=0) | |
| Constructor. | |
| bool | operator< (const lcp_interval &interval) const |
| bool | operator== (const lcp_interval &interval) const |
| Equality operator. | |
| bool | operator!= (const lcp_interval &interval) const |
| Inequality operator. | |
| lcp_interval & | operator= (const lcp_interval &interval) |
| Assignment operator. | |
Public Attributes | |
| Int | l |
The value of the lcp-interval . | |
| Int | left |
The left border of the lcp-interval . | |
| Int | right |
The right border of the lcp-interval . | |
A struct for the representation of an lcp-interval
.
lcp intervals were introduced by Abouelhoda, Kurtz, and Ohlebusch 2004 in the article ,,Replacing Suffix Trees with Enhanced Suffix Arrays''.
Given a lcp array
of length
. An interval
, where
is called a lcp-interval of lcp-value
(denoted by
) if
![$LCP[left]<\ell$](form_149.png)
for all
with 
for all
with 
![$LCP[right+1]<\ell$](form_154.png)
In addition to that, we define the lcp-inteval if
. In this case
.
Lcp-intervals are used to represent nodes of the compressed suffix tree sdsl::cst_sct.
| sdsl::lcp_interval< Int >::lcp_interval | ( | Int | l = 0, |
| Int | left = 0, |
||
| Int | right = 0 |
||
| ) | [inline] |
Constructor.
| l | The value of the interval lcp-interval . |
| left | The left border of the interval lcp-interval . |
| right | The right border of the interval lcp-interval . |
| bool sdsl::lcp_interval< Int >::operator!= | ( | const lcp_interval< Int > & | interval | ) | const [inline] |
Inequality operator.
Two lcp-intervals are not equal if and only if not all their corresponding memeber variables have the same values.
| lcp_interval& sdsl::lcp_interval< Int >::operator= | ( | const lcp_interval< Int > & | interval | ) | [inline] |
Assignment operator.
| interval | The interval which should be assigned to the current object. |
| bool sdsl::lcp_interval< Int >::operator== | ( | const lcp_interval< Int > & | interval | ) | const [inline] |
Equality operator.
Two lcp-intervals are equal if and only if all their corresponding member variables have the same values.
1.8.0