Effective implementation of algorithms (Master Thesis)
Effective and error-free implementation of algorithms
strings::lcs::LCSHirschberg< T > Class Template Reference

#include <lcs_hirschberg.h>

List of all members.

Static Public Member Functions

static int subsequence (const T *seq1, int len1, const T *seq2, int len2, std::vector< T > *out)

Static Private Member Functions

static void saveBest (utils::SequenceHelper< const T > seq1, utils::SequenceHelper< const T > seq2, std::vector< int > *out)
static void recurse (utils::SequenceHelper< const T > seq1, utils::SequenceHelper< const T > seq2, std::vector< T > *out)

Detailed Description

template<typename T>
class strings::lcs::LCSHirschberg< T >

LCS computation in O(nm) time and O(n+m) space based on paper by Hirschberg.


Member Function Documentation

template<typename T >
static void strings::lcs::LCSHirschberg< T >::recurse ( utils::SequenceHelper< const T >  seq1,
utils::SequenceHelper< const T >  seq2,
std::vector< T > *  out 
) [inline, static, private]
template<typename T >
static void strings::lcs::LCSHirschberg< T >::saveBest ( utils::SequenceHelper< const T >  seq1,
utils::SequenceHelper< const T >  seq2,
std::vector< int > *  out 
) [inline, static, private]
template<typename T >
static int strings::lcs::LCSHirschberg< T >::subsequence ( const T *  seq1,
int  len1,
const T *  seq2,
int  len2,
std::vector< T > *  out 
) [inline, static]

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