Effective implementation of algorithms (Master Thesis)
Effective and error-free implementation of algorithms
strings::suffix_array::SearchHelper< _Iterator > Class Template Reference

#include <binsearch.h>

List of all members.

Public Member Functions

 SearchHelper (const _Iterator &first, const _Iterator &last_)
template<typename _PatternIterator >
int compare (const std::pair< _PatternIterator, _PatternIterator > &pattern, const int &a)
template<typename _PatternIterator >
bool operator() (const std::pair< _PatternIterator, _PatternIterator > &pattern, const int &a)
template<typename _PatternIterator >
bool operator() (const int &a, const std::pair< _PatternIterator, _PatternIterator > &pattern)

Private Attributes

_Iterator base
_Iterator last

Detailed Description

template<typename _Iterator>
class strings::suffix_array::SearchHelper< _Iterator >

Helper for searching Can compare two suffixes


Constructor & Destructor Documentation

template<typename _Iterator >
strings::suffix_array::SearchHelper< _Iterator >::SearchHelper ( const _Iterator &  first,
const _Iterator &  last_ 
) [inline]
Parameters:
inputwhole sequence
lengthlength of the sequence

Member Function Documentation

template<typename _Iterator >
template<typename _PatternIterator >
int strings::suffix_array::SearchHelper< _Iterator >::compare ( const std::pair< _PatternIterator, _PatternIterator > &  pattern,
const int &  a 
) [inline]
Returns:
-1 if pattern < suffix 0 if pattern = suffix 1 if pattern > suffix
template<typename _Iterator >
template<typename _PatternIterator >
bool strings::suffix_array::SearchHelper< _Iterator >::operator() ( const int &  a,
const std::pair< _PatternIterator, _PatternIterator > &  pattern 
) [inline]
template<typename _Iterator >
template<typename _PatternIterator >
bool strings::suffix_array::SearchHelper< _Iterator >::operator() ( const std::pair< _PatternIterator, _PatternIterator > &  pattern,
const int &  a 
) [inline]

Returns which of the suffixes is lexicographically smaller. Note that end of sequence is less than any of the characters, i.e. "x" < "xa"

Returns:
true iff pattern < suffix[a]

Member Data Documentation

template<typename _Iterator >
_Iterator strings::suffix_array::SearchHelper< _Iterator >::base [private]
template<typename _Iterator >
_Iterator strings::suffix_array::SearchHelper< _Iterator >::last [private]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines