ptstemmer.support.datastructures
Class SuffixTree<T>

java.lang.Object
  extended by ptstemmer.support.datastructures.SuffixTree<T>
Type Parameters:
T -

public class SuffixTree<T>
extends java.lang.Object

Object-oriented Suffix Tree implementation

Author:
Pedro Oliveira

Constructor Summary
SuffixTree()
           
SuffixTree(T value, java.lang.String... suffixes)
           
 
Method Summary
 void addSuffix(java.lang.String suffix, T value)
          Add suffix to the Suffix Tree
 boolean contains(java.lang.String word)
          Checks if Suffix Tree contains word
 boolean containsProperty(java.lang.String property)
           
 java.lang.String getLongestSuffix(java.lang.String word)
          Get word's longest suffix present in the tree
 Pair<java.lang.String,T> getLongestSuffixAndValue(java.lang.String word)
          Get word's longest suffix and value
 java.util.List<Pair<java.lang.String,T>> getLongestSuffixesAndValues(java.lang.String word)
          Get all the suffixes in the word and their values
 T getLongestSuffixValue(java.lang.String word)
          Get value saved on the longest suffix of the word
 java.lang.Integer getProperty(java.lang.String property)
           
 void setProperty(java.lang.String property, java.lang.Integer value)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SuffixTree

public SuffixTree()

SuffixTree

public SuffixTree(T value,
                  java.lang.String... suffixes)
Method Detail

setProperty

public void setProperty(java.lang.String property,
                        java.lang.Integer value)

getProperty

public java.lang.Integer getProperty(java.lang.String property)

containsProperty

public boolean containsProperty(java.lang.String property)

addSuffix

public void addSuffix(java.lang.String suffix,
                      T value)
Add suffix to the Suffix Tree

Parameters:
suffix -
value -

contains

public boolean contains(java.lang.String word)
Checks if Suffix Tree contains word

Parameters:
word -
Returns:

getLongestSuffixValue

public T getLongestSuffixValue(java.lang.String word)
Get value saved on the longest suffix of the word

Parameters:
word -
Returns:

getLongestSuffix

public java.lang.String getLongestSuffix(java.lang.String word)
Get word's longest suffix present in the tree

Parameters:
word -
Returns:

getLongestSuffixAndValue

public Pair<java.lang.String,T> getLongestSuffixAndValue(java.lang.String word)
Get word's longest suffix and value

Parameters:
word -
Returns:

getLongestSuffixesAndValues

public java.util.List<Pair<java.lang.String,T>> getLongestSuffixesAndValues(java.lang.String word)
Get all the suffixes in the word and their values

Parameters:
word -
Returns: